:root { color-scheme: light; --page: #f2ecdf; --ink: #20201d; --muted: #6d6b64; --blue: #e72166; --yellow: #f2d95a; --brand-magenta: #e72166; --brand-yellow: #fae300; --brand-blue-soft: #d9edf0; --glass: rgba(210,202,186,0.18); --glass-strong: rgba(206,197,178,0.26); --glass-child: rgba(198,190,174,0.20); --glass-child-strong: rgba(190,182,166,0.30); --glass-tint: rgba(231,33,102,0.035); --glass-border: rgba(255,255,255,0.32); --glass-line: rgba(32,32,29,0.10); --shadow: 0 24px 70px rgba(75,70,58,0.14); --glass-shadow: 0 18px 54px rgba(75,70,58,0.05), inset 0 1px 0 rgba(255,255,255,0.34), inset 0 -1px 0 rgba(32,32,29,0.035); --child-shadow: inset 0 1px 0 rgba(255,255,255,0.24), 0 10px 32px rgba(75,70,58,0.05); }
html[data-design="blue"] { color-scheme: dark; --page: #050b16; --ink: #edf7ff; --muted: #aebfd3; --blue: #78caff; --yellow: #ffd96a; --brand-magenta: #f04488; --brand-yellow: #ffd96a; --brand-blue-soft: #78caff; --glass: rgba(255,255,255,0.004); --glass-strong: rgba(255,255,255,0.008); --glass-child: rgba(7,18,36,0.34); --glass-child-strong: rgba(7,18,36,0.46); --glass-tint: rgba(120,202,255,0.025); --glass-border: rgba(255,217,106,0.16); --glass-line: rgba(255,217,106,0.13); --shadow: 0 24px 70px rgba(0,0,0,0.38); --glass-shadow: 0 24px 80px rgba(0,0,0,0.14), inset 0 1px 0 rgba(255,217,106,0.08), inset 0 -1px 0 rgba(120,202,255,0.018); --child-shadow: inset 0 1px 0 rgba(255,217,106,0.10), 0 12px 34px rgba(0,0,0,0.16); }
:root { --glass: rgba(255,255,255,0.52); --glass-strong: rgba(255,255,255,0.62); --glass-child: rgba(255,255,255,0.48); --glass-child-strong: rgba(255,255,255,0.58); --glass-border: rgba(255,255,255,0.62); --glass-shadow: 0 18px 54px rgba(75,70,58,0.10), inset 0 1px 0 rgba(255,255,255,0.72); --child-shadow: 0 14px 42px rgba(75,70,58,0.08), inset 0 1px 0 rgba(255,255,255,0.62); --glass-blur: 14px; }
html[data-design="blue"] { --glass: rgba(7,18,36,0.78); --glass-strong: rgba(7,18,36,0.84); --glass-child: rgba(7,18,36,0.72); --glass-child-strong: rgba(7,18,36,0.82); --glass-border: rgba(255,217,106,0.22); --glass-shadow: 0 22px 62px rgba(0,0,0,0.34), inset 0 1px 0 rgba(255,217,106,0.14); --child-shadow: 0 16px 46px rgba(0,0,0,0.26), inset 0 1px 0 rgba(255,217,106,0.10); --glass-blur: 14px; }
:root { --action: #4986c6; --action-rgb: 73,134,198; --action-weak: rgba(73,134,198,0.14); --action-disabled: rgba(73,134,198,0.50); --accent-secondary: #fed479; }
html[data-design="blue"] { --action: #4986c6; --action-rgb: 73,134,198; --action-weak: rgba(73,134,198,0.28); --action-disabled: rgba(73,134,198,0.50); --accent-secondary: #fed479; }
* { box-sizing: border-box; }
.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
/* Inventory selection: a compact, non-modal companion to the product grid. */
.modal-actions .inventory-removal-start { margin-right: auto; background: var(--accent-secondary); color: #302817; border: 0; border-radius: 8px; padding: 9px 13px; font: inherit; font-size: .86rem; font-weight: 650; cursor: pointer; }
.inventory-removal-panel { position: fixed; z-index: 70; top: 16px; right: 16px; max-height: calc(100dvh - 32px); width: 350px; max-width: calc(100vw - 24px); display: flex; flex-direction: column; background: var(--page); color: var(--ink); border: 1px solid var(--glass-line); border-radius: 14px; box-shadow: 0 10px 40px #0002; overflow: hidden; animation: inventory-removal-in .18s ease-out; }
.inventory-removal-panel [hidden] { display: none !important; }
.inventory-removal-panel button { cursor: pointer; }
.inventory-removal-panel button:disabled { opacity: .45; cursor: default; }
.inventory-removal-panel :focus-visible { outline: 2px solid var(--action); outline-offset: 2px; }
.inventory-removal-head { display: flex; align-items: center; gap: 8px; padding: 16px 16px 12px; }
.inventory-removal-head h2 { flex: 1; margin: 0; font-size: 1rem; line-height: 1.3; }
.inventory-removal-head h2 span { display: inline-block; min-width: 22px; margin-left: 4px; text-align: center; border-radius: 12px; background: var(--accent-secondary); color: #302817; font-size: .75rem; padding: 2px 5px; }
.inventory-removal-head button, .inventory-removal-unselect { flex-shrink: 0; border: 0; background: transparent; color: var(--muted); width: 30px; height: 30px; padding: 0; font-size: 1.3rem; }
.inventory-removal-head .inventory-removal-collapse { display: none; }
.inventory-removal-body { overflow-y: auto; overscroll-behavior: contain; flex: 1; min-height: 0; padding: 0 16px 12px; }
.inventory-removal-intro, .inventory-removal-empty { margin: 0 0 10px; color: var(--muted); font-size: .78rem; line-height: 1.45; }
.inventory-removal-row { display: flex; align-items: flex-start; gap: 9px; padding: 12px 0; border-bottom: 1px solid var(--glass-line); }
.inventory-removal-row > img, .inventory-removal-image { width: 38px; height: 38px; flex: 0 0 38px; object-fit: contain; border-radius: 5px; background: var(--glass); }
.inventory-removal-item { flex: 1; min-width: 0; }
.inventory-removal-item > strong { display: block; font-size: .81rem; line-height: 1.35; overflow-wrap: anywhere; }
.inventory-removal-item > small { display: block; font-size: .69rem; line-height: 1.4; color: var(--muted); margin-top: 4px; }
.inventory-removal-item .inventory-removal-full { color: var(--ink); opacity: .72; }
.inventory-removal-quantity { display: flex; align-items: center; gap: 4px; margin-top: 7px; font-size: .74rem; }
.inventory-removal-quantity button { width: 27px; height: 27px; padding: 0; border: 1px solid var(--glass-line); border-radius: 5px; color: var(--ink); background: var(--glass); font-size: .9rem; }
.inventory-removal-quantity input { width: 54px; min-width: 0; height: 27px; padding: 2px; border: 1px solid var(--glass-line); border-radius: 5px; background: transparent; color: inherit; text-align: center; font: inherit; appearance: textfield; -moz-appearance: textfield; }
.inventory-removal-quantity input::-webkit-inner-spin-button, .inventory-removal-quantity input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.inventory-removal-quantity .inventory-removal-all { width: auto; height: auto; border: 0; background: transparent; font-size: .69rem; color: var(--action); padding: 4px; }
.inventory-removal-quantity > span { overflow-wrap: anywhere; }
.inventory-removal-purchase, .inventory-removal-note { display: grid; gap: 4px; font-size: .73rem; color: var(--muted); margin-top: 10px; }
.inventory-removal-purchase select, .inventory-removal-note textarea { width: 100%; min-width: 0; border: 1px solid var(--glass-line); border-radius: 6px; color: var(--ink); background: var(--page); font: inherit; padding: 7px; }
.inventory-removal-note textarea { resize: vertical; min-height: 48px; max-height: 120px; }
.inventory-removal-item .inventory-removal-error { color: #ba3547; }
.inventory-removal-error:empty, .inventory-removal-status:empty { display: none; }
.inventory-removal-footer { padding: 12px 16px 16px; border-top: 1px solid var(--glass-line); }
.inventory-removal-status { margin: 0 0 8px; color: var(--muted); font-size: .76rem; line-height: 1.4; }
.inventory-removal-actions { display: flex; justify-content: flex-end; gap: 8px; }
.inventory-removal-actions button { min-height: 34px; padding: 7px 11px; font-size: .8rem; line-height: 1.3; border-radius: 7px; }
.product-card.is-removal-selectable .product-card-box { cursor: pointer; }
.product-card.is-removal-selected > .product-card-box { outline: 2px solid #d94b5a; outline-offset: 2px; }
.product-card.is-removal-selected .product-add-inventory-button.is-done { background: #d94b5a !important; color: #fff !important; }
.product-card.is-removal-selected .product-add-inventory-button.is-done .icon-check { display: none; }
.product-card.is-removal-selected .product-add-inventory-button.is-done .icon-remove { display: block; }
@media (min-width: 901px) {
    html body.has-inventory-removal > .page-shell { width: min(1440px, calc(100% - 414px)) !important; margin-left: max(24px, calc((100vw - 1822px) / 2)); margin-right: 390px; }
    html body.has-inventory-removal .gallery { grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr)); }
}
@media (max-width: 900px) {
    .inventory-removal-panel { top: auto; bottom: 8px; right: 8px; left: 8px; width: auto; max-width: none; max-height: 55dvh; }
    .inventory-removal-head { padding: 10px 12px; }
    .inventory-removal-head .inventory-removal-collapse { display: block; }
    .inventory-removal-panel.is-collapsed { max-height: 54px; }
    .has-inventory-removal { padding-bottom: 56dvh; }
    .has-inventory-removal:has(.inventory-removal-panel.is-collapsed) { padding-bottom: 65px; }
    .inventory-removal-body { flex: 1 1 auto; }
    .inventory-removal-footer { padding: 8px 12px 12px; }
}
@keyframes inventory-removal-in { from { opacity: .4; transform: translateX(24px); } to { opacity: 1; transform: translateX(0); } }
@media (prefers-reduced-motion: reduce) { .inventory-removal-panel { animation: none; } }
html { min-height: 100%; background: var(--page); }
body { min-height: 100vh; margin: 0; overflow-x: hidden; background: var(--page); color: var(--ink); font-family: "Noto Sans", system-ui, sans-serif; letter-spacing: 0; }
h1 { font-size: 1em; }
.page-shell { position: relative; z-index: 1; display: grid; grid-template-rows: auto 1fr auto; align-content: start; min-height: 100vh; width: min(1120px, calc(100% - 32px)); margin: 0 auto; padding: 10px 0 30px; gap: 38px; }
.iw-page--admin-area .page-shell { grid-template-rows: auto 1fr; width: calc(100% - 24px); padding: 12px 0 20px; gap: 12px; }
.iw-page--admin-area .owner-admin-bar { justify-content: flex-start; top: 6px; }
.iw-page--admin-area .owner-admin-bar--page-editor { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; padding: 6px; }
.owner-admin-bar--page-editor > .ghost-button { flex: 0 0 auto; min-height: 34px; padding: 5px 9px; }
.owner-admin-bar--page-editor .editor-toolbar { flex: 0 1 auto; display: flex; align-items: center; gap: 6px; }
.owner-admin-bar--page-editor .editor-canvas-toolbar { position: static; display: block; padding: 0; border: 0; background: transparent; box-shadow: none; backdrop-filter: none; }
.owner-admin-bar--page-editor .editor-device-switch { display: inline-flex; padding: 2px; }
.owner-admin-bar--page-editor .editor-device-switch button { display: grid; width: 34px; min-height: 34px; padding: 6px; place-items: center; }
.owner-admin-bar--page-editor .editor-device-switch svg { width: 18px; height: 18px; }
.owner-admin-bar--page-editor .editor-rich-toolbar { position: static; flex: 1 1 720px; display: flex; align-items: center; gap: 6px; min-width: 0; padding: 0; border: 0; background: transparent; box-shadow: none; backdrop-filter: none; }
.owner-admin-bar--page-editor .editor-rich-toolbar-head { flex: 0 0 auto; display: block; }
.owner-admin-bar--page-editor .editor-rich-save-group { gap: 5px; }
.owner-admin-bar--page-editor .editor-rich-save-action { display: flex; gap: 5px; }
.owner-admin-bar--page-editor .editor-rich-save-action > small { display: none; }
.owner-admin-bar--page-editor .editor-rich-sync > span > small { display: none; }
.owner-admin-bar--page-editor .editor-rich-controls { flex: 1 1 auto; display: flex; align-items: center; gap: 5px; min-width: 0; }
.owner-admin-bar--page-editor .editor-rich-control-row { flex: 0 1 auto; align-items: center; gap: 4px; padding: 2px; border: 0; background: transparent; }
.owner-admin-bar--page-editor .editor-rich-control-row > label > span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.owner-admin-bar--page-editor .editor-rich-controls select,
.owner-admin-bar--page-editor .editor-rich-controls input[type="text"] { min-height: 34px; }
.owner-admin-bar--page-editor .editor-rich-link-target { min-width: 130px; flex: 1 1 160px !important; }
.owner-admin-bar--page-editor .editor-rich-link-target input { min-width: 130px; }
.owner-admin-bar--page-editor .editor-rich-button-group button,
.owner-admin-bar--page-editor .editor-rich-action-group button { min-height: 34px; padding-inline: 7px; }
.owner-admin-bar--page-editor .editor-component-central { flex: 1 0 100%; }
.owner-admin-bar--page-editor .editor-rich-toolbar[data-mode="none"] .editor-rich-controls { opacity: 0.32; }
.iw-page--admin_pages .admin-page-editor { gap: 8px; padding-top: 8px; }
.iw-page--admin_pages .editor-page-content { gap: 10px; }
.iw-page--admin_pages .editor-visual-section { gap: 8px; }
.iw-page--admin_pages .editor-canvas-viewport { padding: 12px; }
.iw-page--admin-area .page-main { grid-row: 2; gap: 14px; }
.iw-page--admin-area .page-main > .page-block { grid-column: 1 / -1; }
.iw-page--admin-area .page-main > .page-block > .simple-panel { padding: clamp(16px, 1.5vw, 24px); }
.page-header { grid-row: 1; display: grid; justify-items: center; align-content: start; gap: 24px; min-height: 108px; padding: 0 0 8px; text-align: center; }
.brand-logo { display: grid; justify-items: center; gap: 2px; color: var(--ink); text-decoration: none; }
.brand-logo-image { display: block; width: min(340px, 76vw); height: auto; object-fit: contain; }
.brand-logo-image-blue { display: none; }
html[data-design="blue"] .brand-logo-image-light { display: none; }
html[data-design="blue"] .brand-logo-image-blue { display: block; }
.brand-wordmark { font-family: "Manrope", system-ui, sans-serif; font-size: clamp(2.15rem, 4.2vw, 4rem); font-weight: 860; line-height: 0.95; letter-spacing: 0; }
.brand-claim { color: var(--muted); font-size: 0.88rem; font-weight: 800; letter-spacing: 0.08em; text-transform: uppercase; }
.brand { display: inline-flex; align-items: center; color: var(--ink); font-family: "Manrope", system-ui, sans-serif; font-size: 1.2rem; font-weight: 860; letter-spacing: 0; text-decoration: none; }
.nav-brand { min-height: 36px; padding-right: 8px; }
.nav-menu { display: flex; align-items: center; justify-content: center; gap: clamp(14px, 1.6vw, 24px); flex-wrap: wrap; width: 100%; }
.nav-link, .logout-button { min-height: 36px; display: inline-flex; align-items: center; color: rgba(32,32,29,0.76); font-size: 0.9rem; font-weight: 680; text-decoration: none; }
.nav-link { padding: 0 2px; border: 0; border-radius: 0; background: transparent; box-shadow: none; transition: color 140ms ease; }
.nav-link-label { display: inline-flex; align-items: center; min-height: 36px; }
.logout-button { padding: 0 12px; border-radius: 8px; background: rgba(250,246,237,0.54); box-shadow: inset 0 1px 0 rgba(255,255,255,0.48); backdrop-filter: blur(16px); }
.nav-link--beta { gap: 4px; }
.nav-beta-badge { align-self: flex-start; padding-top: 5px; color: color-mix(in srgb, currentColor 48%, transparent); font-size: 0.45rem; font-weight: 720; line-height: 1; letter-spacing: 0.045em; text-transform: uppercase; pointer-events: none; }
.nav-link:hover { background: transparent; color: var(--action); box-shadow: none; }
.logout-button:hover { background: var(--action-weak); color: var(--ink); box-shadow: inset 0 1px 0 rgba(255,255,255,0.58), 0 8px 26px rgba(var(--action-rgb),0.10); }
.nav-link[aria-current="page"] { background: transparent; color: var(--action); font-weight: 780; box-shadow: none; }
.nav-link--auth-required { font-family: inherit; cursor: pointer; opacity: 0.55; }
.user-menu { position: relative; }
.user-menu summary { list-style: none; }
.user-menu summary::-webkit-details-marker { display: none; }
.user-menu-trigger { min-width: 38px; min-height: 38px; display: inline-grid; grid-auto-flow: column; place-items: center; gap: 4px; border: 0; border-radius: 8px; padding: 0 7px; background: transparent; color: var(--action); cursor: pointer; }
.user-menu-trigger svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.user-menu-trigger span { min-width: 18px; min-height: 18px; display: inline-grid; place-items: center; border-radius: 999px; background: rgba(var(--action-rgb),0.14); color: var(--action); font-size: 0.72rem; font-weight: 860; }
.user-menu-trigger span.is-community-points-updated { animation: community-points-target-pulse 680ms cubic-bezier(.2,.78,.2,1); }
.user-menu-dropdown { position: absolute; top: calc(100% + 8px); right: 0; z-index: 60; min-width: 210px; display: grid; gap: 3px; padding: 8px; border: 1px solid var(--glass-border); border-radius: 8px; background: var(--glass); box-shadow: var(--glass-shadow); opacity: 0; pointer-events: none; transform: translateY(-4px); transition: opacity 140ms ease, transform 140ms ease; backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.user-menu[open] .user-menu-dropdown, .user-menu:hover .user-menu-dropdown, .user-menu:focus-within .user-menu-dropdown { opacity: 1; pointer-events: auto; transform: translateY(0); }
.user-menu-dropdown a, .user-menu-logout-button { min-height: 34px; display: flex; align-items: center; border: 0; border-radius: 8px; padding: 0 10px; background: transparent; color: var(--ink); font: inherit; font-weight: 760; text-align: left; text-decoration: none; cursor: pointer; }
.user-community-status { display: grid; gap: 2px; padding: 8px 10px 10px; border-bottom: 1px solid var(--glass-line); margin-bottom: 4px; text-align: left; }
.user-community-status strong { color: var(--ink); font-weight: 860; }
.user-community-status span { color: var(--muted); font-size: 0.82rem; line-height: 1.3; }
.user-community-status [data-community-points-value] { color: inherit; font: inherit; }
.community-point-flight { position: fixed; inset: 0; z-index: 10000; overflow: visible; pointer-events: none; }
.community-point-particle { position: fixed; display: block; border-radius: 999px; background: #fff6a2; box-shadow: 0 0 5px 1px rgba(250,227,0,0.78), 0 0 11px 3px rgba(73,134,198,0.34); will-change: transform, opacity; }
.community-point-particle:nth-child(3n) { background: #83caff; box-shadow: 0 0 5px 1px rgba(73,134,198,0.74), 0 0 10px 3px rgba(255,255,255,0.42); }
.community-point-particle:nth-child(3n + 1) { background: #ffc2d8; box-shadow: 0 0 5px 1px rgba(231,33,102,0.58), 0 0 10px 3px rgba(255,255,255,0.46); }
.community-point-award { position: fixed; min-width: 42px; min-height: 32px; display: inline-grid; place-items: center; padding: 5px 10px; border: 1px solid rgba(255,255,255,0.76); border-radius: 999px; background: rgba(255,255,255,0.90); color: var(--action); font-family: "Manrope", system-ui, sans-serif; font-size: 0.9rem; font-weight: 900; box-shadow: 0 10px 28px rgba(73,134,198,0.20), 0 0 18px rgba(250,227,0,0.24); backdrop-filter: blur(8px); will-change: transform, opacity; }
@keyframes community-points-target-pulse {
  0%, 100% { transform: scale(1); box-shadow: 0 0 0 0 rgba(var(--action-rgb),0); }
  42% { transform: scale(1.24); box-shadow: 0 0 0 7px rgba(var(--action-rgb),0.14), 0 0 20px rgba(250,227,0,0.42); }
}
@media (prefers-reduced-motion: reduce) {
  .nav-link { transition: none; }
  .user-menu-trigger span.is-community-points-updated { animation: none; }
  .community-point-flight { display: none; }
}
.user-menu-logout-form { margin: 0; }
.user-menu-logout-button { width: 100%; }
.user-menu-dropdown a:hover, .user-menu-logout-button:hover { background: var(--glass-child); color: var(--action); }
@media (hover: none), (pointer: coarse) {
  .user-menu-trigger { touch-action: manipulation; }
  .user-menu:hover:not([open]) .user-menu-dropdown,
  .user-menu:focus-within:not([open]) .user-menu-dropdown {
    opacity: 0;
    pointer-events: none;
    transform: translateY(-4px);
  }
}
.ai-runtime-notice { width: min(920px, 100%); display: grid; gap: 3px; padding: 12px 15px; border: 1px solid rgba(159,93,84,0.28); border-radius: 8px; background: rgba(159,93,84,0.10); color: #85473f; text-align: left; }
.ai-runtime-notice strong { color: inherit; font-size: 0.9rem; }
.ai-runtime-notice span { color: var(--muted); font-size: 0.8rem; line-height: 1.4; }
html[data-design="blue"] .ai-runtime-notice { color: #ffb7ac; }
.email-import-notices { width: 100%; display: grid; gap: 10px; text-align: left; }
.email-import-notices[hidden] { display: none; }
.email-import-notice { width: 100%; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 18px; padding: 15px 16px; border: 1px solid rgba(var(--action-rgb),0.26); border-radius: 10px; background: rgba(var(--action-rgb),0.10); box-shadow: var(--child-shadow); }
.email-import-notice.is-expiry { border-color: rgba(231,33,102,0.34); background: rgba(231,33,102,0.09); }
.email-import-notice-copy { min-width: 0; display: grid; gap: 3px; }
.email-import-notice-eyebrow { color: var(--action); font-size: 0.72rem; font-weight: 880; letter-spacing: 0.08em; text-transform: uppercase; }
.email-import-notice.is-expiry .email-import-notice-eyebrow { color: var(--brand-magenta); }
.email-import-notice-copy strong { color: var(--ink); font-family: "Manrope", system-ui, sans-serif; font-size: 1rem; line-height: 1.25; overflow-wrap: anywhere; }
.email-import-notice-copy p { margin: 0; color: var(--muted); font-size: 0.86rem; line-height: 1.4; overflow-wrap: anywhere; }
.email-import-notice-metadata { display: flex; flex-wrap: wrap; gap: 7px 18px; margin: 7px 0 0; }
.email-import-notice-metadata div { min-width: min(220px, 100%); display: grid; gap: 1px; }
.email-import-notice-metadata dt { color: var(--muted); font-size: 0.68rem; font-weight: 820; letter-spacing: 0.06em; text-transform: uppercase; }
.email-import-notice-metadata dd { margin: 0; color: var(--ink); font-size: 0.82rem; overflow-wrap: anywhere; }
.email-import-notice-actions { display: flex; align-items: center; gap: 10px; }
.email-import-notice-link { min-height: 36px; display: inline-flex; align-items: center; justify-content: center; padding: 0 13px; border: 0; border-radius: 8px; background: var(--action); color: #fff; font: inherit; font-size: 0.84rem; font-weight: 820; text-decoration: none; white-space: nowrap; cursor: pointer; }
.email-import-notice-link:hover { filter: brightness(1.06); }
.email-import-notice-block { min-height: 36px; padding: 0 12px; border: 1px solid rgba(231,33,102,0.28); border-radius: 8px; background: transparent; color: var(--brand-magenta); font: inherit; font-size: 0.8rem; font-weight: 780; cursor: pointer; }
.email-import-notice-link:disabled, .email-import-notice-block:disabled { opacity: 0.5; cursor: wait; }
.email-import-notice-error { color: var(--brand-magenta) !important; font-weight: 720; }
.email-import-notice-dismiss { width: 34px; height: 34px; display: inline-grid; place-items: center; border: 0; border-radius: 8px; background: transparent; color: var(--muted); cursor: pointer; font: inherit; font-size: 1.35rem; line-height: 1; }
.email-import-notice-dismiss:hover { background: var(--glass-child); color: var(--ink); }
.email-import-notice-dismiss:disabled { opacity: 0.48; cursor: wait; }
.email-import-notice.is-sender-confirmation {
  width: min(920px, 100%);
  justify-self: center;
  gap: 14px;
  padding: 12px 14px;
  border-color: rgba(var(--action-rgb),0.20);
  border-radius: 12px;
  background: linear-gradient(135deg, rgba(255,255,255,0.48), rgba(var(--action-rgb),0.07));
  box-shadow: 0 12px 28px rgba(46,55,63,0.07);
}

.email-import-notice.is-sender-confirmation .email-import-notice-copy { gap: 1px; }
.email-import-notice.is-sender-confirmation .email-import-notice-eyebrow {
  font-size: 0.62rem;
  letter-spacing: 0.11em;
}
.email-import-notice.is-sender-confirmation .email-import-notice-copy strong {
  font-size: 0.92rem;
  line-height: 1.2;
}
.email-import-notice.is-sender-confirmation .email-import-notice-copy p {
  max-width: 58ch;
  font-size: 0.75rem;
  line-height: 1.35;
}
.email-import-notice.is-sender-confirmation .email-import-notice-metadata {
  gap: 3px 14px;
  margin-top: 5px;
}
.email-import-notice.is-sender-confirmation .email-import-notice-metadata div {
  min-width: 0;
  display: flex;
  align-items: baseline;
  gap: 4px;
}
.email-import-notice.is-sender-confirmation .email-import-notice-metadata dt {
  font-size: 0.58rem;
  letter-spacing: 0.05em;
}
.email-import-notice.is-sender-confirmation .email-import-notice-metadata dt::after { content: ":"; }
.email-import-notice.is-sender-confirmation .email-import-notice-metadata dd {
  max-width: 260px;
  font-size: 0.72rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.email-import-notice.is-sender-confirmation .email-import-notice-actions { gap: 6px; }
.email-import-notice.is-sender-confirmation .email-import-notice-link,
.email-import-notice.is-sender-confirmation .email-import-notice-block {
  min-height: 32px;
  padding: 0 10px;
  border-radius: 7px;
  font-size: 0.74rem;
  white-space: nowrap;
}
@media (max-width: 700px) { .email-import-notice { grid-template-columns: 1fr; gap: 12px; } .email-import-notice-actions { align-items: stretch; flex-direction: column; } .email-import-notice-link, .email-import-notice-block { width: 100%; white-space: normal; text-align: center; } }
@media (max-width: 700px) {
  .email-import-notice.is-sender-confirmation { gap: 9px; padding: 11px; }
  .email-import-notice.is-sender-confirmation .email-import-notice-metadata {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 3px 10px;
  }
  .email-import-notice.is-sender-confirmation .email-import-notice-metadata div:first-child { grid-column: 1 / -1; }
  .email-import-notice.is-sender-confirmation .email-import-notice-metadata dd { max-width: 100%; }
  .email-import-notice.is-sender-confirmation .email-import-notice-actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
.page-main { grid-row: 2; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-flow: row; align-content: start; gap: 34px 16px; }
.page-block { min-width: 0; }
.page-block:has(> .page-editable-text), .page-block:has(> .page-editable-content) { align-self: start; }
.page-editable-content { display: grid; justify-items: stretch; gap: 12px; width: auto; max-width: 100%; min-width: 0; box-sizing: border-box; }
.page-editable-content > :where(h1, h2, h3, h4, h5, h6, p, ul, ol) { margin: 0; }
.page-editable-content > :where(h1, h2, h3, h4, h5, h6) { font-family: "Manrope", system-ui, sans-serif; line-height: 1.15; }
.page-editable-content > :where(ul, ol) { display: grid; gap: 6px; padding-inline-start: 1.35em; }
.page-editable-content .page-content-button { justify-self: start; width: max-content; max-width: 100%; font-size: clamp(var(--page-text-min), var(--page-text-fluid), var(--page-text-max)); text-decoration: none; }
.page-editable-content .page-content-link { color: var(--action); text-underline-offset: 0.16em; }
.page-content-media { display: grid; gap: 7px; width: min(100%, var(--page-media-width, 100%)); margin: 0; }
.page-content-media-left { justify-self: start; }
.page-content-media-center { justify-self: center; }
.page-content-media-right { justify-self: end; }
.page-content-media img { display: block; width: 100%; height: auto; border-radius: 9px; object-fit: contain; background: #fff; }
.page-content-media figcaption { color: var(--muted); font-size: 0.78rem; line-height: 1.4; }
.page-editable-text { width: 100%; min-width: 0; margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: clamp(var(--page-text-min), var(--page-text-fluid), var(--page-text-max)); line-height: 1.45; overflow-wrap: anywhere; }
.page-editable-text-light { font-weight: 300; }
.page-editable-text-normal { font-weight: 400; }
.page-editable-text-bold { font-weight: 700; }
.page-editable-inline-italic { font-style: italic; }
.page-editable-inline-underline { text-decoration: underline; text-underline-offset: 0.12em; }
.page-editable-text-left { text-align: left; }
.page-editable-text-center { text-align: center; }
.page-editable-text-right { text-align: right; }
.owner-admin-bar { grid-row: 1; position: sticky; top: 10px; z-index: 20; display: flex; justify-content: center; align-items: center; gap: 10px; padding: 8px; border-radius: 8px; background: var(--glass); border: 1px solid var(--glass-border); box-shadow: var(--glass-shadow); backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); }
.hero { display: grid; place-items: center; padding: 62px 0 12px; text-align: center; }
.hero-content { width: min(760px, 100%); }
.hero h1 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: clamp(1.15rem, 3.5vw, 2.4rem); line-height: 1.02; font-weight: 800; letter-spacing: 0; }
.hero-subline { margin: 10px 0 0; color: rgba(32,32,29,0.56); font-size: 0.94rem; }
.hero-tagline { max-width: 650px; margin: 22px auto 0; color: var(--muted); font-size: clamp(1.05rem, 2vw, 1.28rem); line-height: 1.55; }
.hero-status-note { max-width: 620px; margin: 12px auto 0; color: var(--muted); font-size: 0.78rem; line-height: 1.45; }
.page-block[data-page-block="landing_public_hero"] .hero { padding: 24px 0 0; }
.page-block[data-page-block="landing_public_hero"] .hero-content { width: min(780px, 100%); }
.page-block[data-page-block="landing_public_hero"] .hero h1 { font-size: clamp(1.9rem, 3.1vw, 2.35rem); line-height: 1.08; text-wrap: balance; }
.page-block[data-page-block="landing_public_hero"] .hero-subline { max-width: 700px; margin: 12px auto 0; font-size: 1rem; line-height: 1.55; text-wrap: balance; }
.page-block[data-page-block="landing_public_login"] .landing-auth { margin-top: 0; }
.landing-context { width: min(720px, 100%); display: grid; justify-self: center; gap: 10px; margin-top: -8px; text-align: center; }
.landing-context-text { margin: 0; color: var(--muted); font-size: 1rem; line-height: 1.62; text-wrap: pretty; }
.landing-context-note { max-width: 660px; margin: 0 auto; color: var(--muted); font-size: 0.86rem; line-height: 1.5; text-wrap: balance; }
.journal-teaser { width: min(760px, 100%); justify-self: center; padding-top: 18px; border-top: 1px solid var(--glass-line); }
.journal-teaser-head h2 { margin: 0; font-size: 1.18rem; }
.journal-teaser-head p { margin: 5px 0 0; color: var(--muted); }
.journal-teaser ul { display: grid; gap: 7px; margin: 14px 0 10px; padding-left: 20px; }
.journal-teaser a, .journal-entry-row a, .journal-article a { color: var(--action); text-underline-offset: 3px; }
.journal-teaser-all { display: inline-block; font-weight: 700; }
.journal-index, .journal-article { width: min(780px, 100%); justify-self: center; }
.journal-entry-list { display: grid; }
.journal-entry-row { padding: 20px 0; border-top: 1px solid var(--glass-line); }
.journal-entry-row:first-child { border-top: 0; }
.journal-entry-row time, .journal-article-head time { color: var(--muted); font-size: 0.82rem; }
.journal-entry-row h2 { margin: 5px 0 6px; font-size: clamp(1.08rem, 1rem + 0.35vw, 1.32rem); }
.journal-entry-row p { margin: 0; color: var(--muted); line-height: 1.55; }
.journal-article-head { margin-bottom: 22px; }
.journal-article-head p { margin: 0 0 14px; }
.journal-article-head h1 { margin: 6px 0 0; }
.journal-article-content { line-height: 1.68; }
.journal-article-content h2, .journal-article-content h3 { margin-top: 1.5em; }
@media (max-width: 620px) {
  .page-block[data-page-block="landing_public_hero"] .hero { padding-top: 14px; }
  .page-block[data-page-block="landing_public_hero"] .hero h1 { font-size: clamp(1.7rem, 8vw, 2rem); }
  .page-block[data-page-block="landing_public_hero"] .hero-subline,
  .landing-context-text { font-size: 0.94rem; line-height: 1.55; }
  .landing-context { gap: 9px; margin-top: -10px; text-align: left; }
  .landing-context-note { margin: 0; font-size: 0.84rem; }
}
.component-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
.card { min-height: 160px; padding: 24px; border-radius: 8px; }
.card h2, .card h3 { margin: 0 0 12px; font-family: "Manrope", system-ui, sans-serif; font-size: 1.16rem; font-weight: 800; }
.card p { margin: 0; color: var(--muted); line-height: 1.55; }
.catalog-preview, .catalog-page, .catalog-detail { display: grid; gap: 18px; }
.catalog-breadcrumbs { min-width: 0; overflow: hidden; }
.catalog-breadcrumb-list { display: flex; min-width: 0; align-items: center; gap: 7px; margin: 0; padding: 0; list-style: none; color: var(--muted); font-size: 0.78rem; line-height: 1.35; }
.catalog-breadcrumb-item { min-width: 0; display: flex; align-items: center; gap: 7px; flex: 0 0 auto; }
.catalog-breadcrumb-item + .catalog-breadcrumb-item::before { content: "/"; color: color-mix(in srgb, var(--muted) 62%, transparent); }
.catalog-breadcrumb-item a { color: var(--action); font-weight: 760; text-decoration: none; }
.catalog-breadcrumb-item a:hover, .catalog-breadcrumb-item a:focus-visible { text-decoration: underline; text-underline-offset: 3px; }
.catalog-breadcrumb-item.is-current { flex: 1 1 auto; overflow: hidden; }
.catalog-breadcrumb-item.is-current span { display: block; min-width: 0; overflow: hidden; color: var(--muted); font-weight: 720; text-overflow: ellipsis; white-space: nowrap; }
.private-product-dashboard .catalog-breadcrumb-list, .catalog-inventory-detail .catalog-breadcrumb-list { flex-wrap: wrap; }
.private-product-dashboard .catalog-breadcrumb-item, .catalog-inventory-detail .catalog-breadcrumb-item { max-width: 100%; overflow-wrap: anywhere; }
.catalog-preview .section-head span, .catalog-hero span { display: block; max-width: 720px; color: var(--muted); line-height: 1.5; }
.catalog-eyebrow, .catalog-hero p { margin: 0 0 6px; color: var(--brand-magenta); font-size: 0.82rem; font-weight: 860; letter-spacing: 0.08em; text-transform: uppercase; }
.catalog-eyebrow:has(+ h2) { display: none; }
html .catalog-eyebrow + h2 { margin: 0 0 6px; color: var(--brand-magenta); font-family: inherit; font-size: 0.82rem; font-weight: 860; letter-spacing: 0.08em; line-height: 1.2; text-transform: uppercase; }
html .catalog-description-section > h2, html .catalog-substitutes-head h2 { margin: 0.83em 0; color: inherit; font-family: inherit; font-size: 1.5em; font-weight: 700; letter-spacing: normal; line-height: normal; text-transform: none; }
.catalog-preview .section-head h1, .catalog-hero h1 { margin: 0 0 8px; font-family: "Manrope", system-ui, sans-serif; font-size: clamp(0.825rem, 1.5vw, 1.3rem); line-height: 1.05; }
.catalog-preview-cta { justify-self: center; color: var(--action); font-weight: 840; text-decoration: none; }
.catalog-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.catalog-grid-preview { --catalog-preview-row-height: 332px; --catalog-preview-gap: 14px; position: relative; grid-auto-rows: var(--catalog-preview-row-height); max-height: calc((var(--catalog-preview-row-height) * 6) + (var(--catalog-preview-gap) * 5) - 26px); overflow: hidden; mask-image: linear-gradient(to bottom, #000 0%, #000 calc(100% - 36px), transparent 100%); -webkit-mask-image: linear-gradient(to bottom, #000 0%, #000 calc(100% - 36px), transparent 100%); }
.catalog-card { background: var(--glass); border: 1px solid var(--glass-border); box-shadow: var(--glass-shadow); backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.catalog-card-link { position: absolute; inset: 0; z-index: 1; border-radius: inherit; }
.catalog-card-link:focus-visible { outline: 2px solid var(--action); outline-offset: -4px; }
.catalog-card > :not(.catalog-card-link) { position: relative; z-index: 2; pointer-events: none; }
.catalog-placeholder { width: 100%; height: 100%; display: grid; place-items: center; background: radial-gradient(circle at 35% 28%, rgba(255,255,255,0.72), rgba(255,255,255,0.24) 52%, rgba(var(--action-rgb),0.10)); color: rgba(var(--action-rgb),0.72); font-family: "Manrope", system-ui, sans-serif; font-size: clamp(1.6rem, 5vw, 3.4rem); font-weight: 860; }
.catalog-badge { min-height: 22px; display: inline-flex; align-items: center; border-radius: 999px; padding: 0 8px; background: rgba(254,212,121,0.44); color: #7b5b05; }
.catalog-card-info .product-price { margin-top: 2px; }
.product-region-offer-notice { display: block; width: 100%; margin-bottom: 3px; color: #9c3158; font-size: 0.68rem; line-height: 1.22; font-weight: 820; white-space: normal; overflow-wrap: anywhere; }
.product-private-policy-note, .catalog-private-policy-note { display: block; padding: 7px 9px; border-radius: 8px; background: rgba(210,84,96,0.10); color: #8d3340; font-size: 0.76rem; line-height: 1.28; font-weight: 850; overflow-wrap: anywhere; }
.catalog-private-policy-note { max-width: 680px; font-size: 0.86rem; }
.catalog-toolbar { display: grid; gap: 8px; }
.catalog-toolbar .category-filter { margin: 0; }
.catalog-toolbar .gallery-head { margin-bottom: 0; }
.catalog-reset-link { min-height: 34px; display: inline-flex; align-items: center; color: var(--muted); font-size: 0.82rem; font-weight: 760; text-decoration: none; }
.catalog-reset-link:hover { color: var(--action); }
.catalog-result-bar { display: flex; align-items: center; justify-content: flex-end; min-height: 30px; color: var(--muted); font-size: 0.86rem; }
.catalog-demo-banner { padding: 12px 14px; border-radius: 8px; background: rgba(254,212,121,0.28); border: 1px solid rgba(254,212,121,0.42); color: var(--ink); font-weight: 780; }
.catalog-detail-card { position: relative; display: grid; grid-template-columns: minmax(220px, 0.78fr) minmax(0, 1.22fr); gap: 24px; align-items: start; padding: 24px; border-radius: 8px; background: var(--glass); border: 1px solid var(--glass-border); box-shadow: var(--glass-shadow); backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.catalog-detail-gallery { display: grid; gap: 10px; min-width: 0; }
.catalog-detail-media { position: relative; display: grid; place-items: center; aspect-ratio: 1 / 1; border-radius: 8px; overflow: hidden; background: #fff; }
.catalog-detail-image-button { width: 100%; height: 100%; display: grid; place-items: center; border: 0; padding: 0; background: transparent; cursor: zoom-in; }
.catalog-detail-media img { width: 100%; height: 100%; object-fit: contain; object-position: center; }
.private-product-image-actions { position: absolute; top: 10px; right: 10px; z-index: 6; display: inline-flex; gap: 6px; }
.private-image-status { position: absolute; top: calc(100% + 6px); right: 0; width: min(320px, 72vw); margin: 0; padding: 7px 9px; border-radius: 8px; background: rgba(255,255,255,0.94); color: #8f3447; font-size: 0.76rem; font-weight: 760; line-height: 1.35; box-shadow: 0 8px 20px rgba(32,32,29,0.16); }
.private-image-status:empty { display: none; }
.private-product-image-action { width: 34px; height: 34px; display: inline-grid; place-items: center; border: 1px solid rgba(255,255,255,0.72); border-radius: 999px; padding: 0; background: rgba(255,255,255,0.86); color: var(--action); cursor: pointer; box-shadow: 0 8px 22px rgba(15,23,42,0.12); backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px); }
.private-product-image-action:hover, .private-product-image-action:focus-visible { background: var(--action); color: #fff; outline: 0; }
.private-product-image-action:disabled { opacity: 0.46; cursor: not-allowed; }
.private-image-count { min-width: 38px; height: 28px; align-self: center; display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; background: rgba(31,43,55,0.76); color: #fff; font-size: 0.68rem; font-weight: 820; box-shadow: 0 5px 16px rgba(15,23,42,0.14); }
.private-product-image-delete:hover, .private-product-image-delete:focus-visible { background: #d94b5a; color: #fff; }
.private-product-image-action svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
.catalog-image-missing-note { position: absolute; left: 10px; right: 10px; bottom: 10px; margin: 0; padding: 6px 9px; border-radius: 8px; background: rgba(255,255,255,0.84); color: var(--muted); font-size: 0.69rem; line-height: 1.28; box-shadow: 0 8px 22px rgba(15,23,42,0.08); }
.catalog-image-source-link { position: absolute; left: 10px; bottom: 10px; display: inline-flex; max-width: calc(100% - 20px); min-height: 28px; align-items: center; padding: 4px 9px; border-radius: 8px; background: rgba(255,255,255,0.82); color: var(--muted); font-size: 0.76rem; font-weight: 760; text-decoration: none; box-shadow: 0 8px 22px rgba(15,23,42,0.08); cursor: default; }
.private-image-origin-badge { position: absolute; left: 10px; bottom: 10px; z-index: 5; display: inline-flex; align-items: center; max-width: calc(100% - 20px); min-height: 26px; padding: 4px 9px; border: 1px solid rgba(255,255,255,0.72); border-radius: 999px; background: rgba(31,43,55,0.78); color: #fff; font-size: 0.68rem; font-weight: 780; line-height: 1.2; letter-spacing: 0.01em; box-shadow: 0 5px 16px rgba(15,23,42,0.16); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.private-image-origin-badge[hidden] { display: none; }
.private-image-origin-badge-compact { left: 7px; bottom: 7px; min-height: 22px; padding: 3px 7px; font-size: 0.61rem; }
.catalog-image-thumbs { display: grid; grid-template-columns: repeat(auto-fill, minmax(74px, 1fr)); gap: 8px; }
.catalog-image-thumb { min-width: 0; aspect-ratio: 1 / 0.72; border: 1px solid rgba(255,255,255,0.62); border-radius: 8px; overflow: hidden; background: #fff; cursor: pointer; padding: 0; box-shadow: inset 0 1px 0 rgba(255,255,255,0.46); }
.catalog-image-thumb img { width: 100%; height: 100%; display: block; object-fit: contain; object-position: center; }
.catalog-image-thumb:hover, .catalog-image-thumb:focus-visible, .catalog-image-thumb.is-active { border-color: rgba(var(--action-rgb),0.64); outline: 0; box-shadow: inset 0 0 0 2px rgba(var(--action-rgb),0.22), 0 10px 24px rgba(24,35,53,0.10); }
.private-gallery-thumb-wrap { position: relative; min-width: 0; }
.private-gallery-thumb-wrap > .catalog-image-thumb { width: 100%; height: 100%; }
.private-gallery-thumb-actions { position: absolute; right: 4px; bottom: 4px; z-index: 2; display: inline-flex; gap: 3px; }
.private-gallery-thumb-actions button { width: 23px; height: 23px; display: inline-grid; place-items: center; border: 1px solid rgba(255,255,255,0.76); border-radius: 999px; padding: 0; background: rgba(31,43,55,0.82); color: #fff; font-size: 0.92rem; line-height: 1; cursor: pointer; box-shadow: 0 4px 12px rgba(15,23,42,0.18); }
.private-gallery-thumb-actions button:hover, .private-gallery-thumb-actions button:focus-visible { background: var(--action); outline: 0; }
.private-gallery-thumb-actions button[data-private-image-delete]:hover, .private-gallery-thumb-actions button[data-private-image-delete]:focus-visible { background: #d94b5a; }
.product-ai-enrichment { display: grid; align-content: start; gap: 10px; min-width: 0; width: 100%; }
.product-ai-enrichment-trigger { justify-self: start; min-height: 36px; padding: 8px 12px; font-size: 0.8rem; font-weight: 780; }
.product-ai-change-badge { gap: 8px; }
.product-ai-panel-content { display: grid; gap: 10px; padding-top: 10px; }
.product-ai-panel-content > .product-muted-note { margin: 0; line-height: 1.5; }
.product-ai-panel-actions { display: flex; align-items: center; gap: 8px 12px; flex-wrap: wrap; }
.product-ai-dismiss-link { border: 0; padding: 0; min-height: 36px; background: transparent; color: var(--action); font: inherit; font-size: 0.8rem; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.product-ai-disclosure > summary { cursor: pointer; list-style: none; }
.product-ai-disclosure > summary::-webkit-details-marker { display: none; }
.product-ai-disclosure > summary h2 { min-width: 0; }
.product-ai-disclosure > summary:focus-visible, .product-ai-dismiss-link:focus-visible { outline: 2px solid var(--action); outline-offset: 4px; border-radius: 4px; }
.product-ai-expand-chevron { width: 22px; height: 22px; flex: 0 0 22px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.product-ai-disclosure[open] .product-ai-collapsed-title,
.product-ai-disclosure[open] .product-ai-expand-chevron,
.product-ai-disclosure:not([open]) .product-ai-expanded-title,
.product-ai-disclosure:not([open]) .product-ai-change-badge { display: none; }
.product-ai-enrichment [hidden] { display: none !important; }
.product-ai-new-data-dot { width: 7px; height: 7px; flex: 0 0 auto; border-radius: 50%; background: var(--brand-magenta); box-shadow: 0 0 0 3px rgba(214,53,106,0.12); }
.product-ai-dialog { width: min(680px, calc(100vw - 28px)); max-height: min(820px, calc(100vh - 28px)); border: 0; border-radius: 12px; padding: 0; background: transparent; color: var(--ink); box-shadow: 0 24px 70px rgba(15,23,42,0.28); }
.product-ai-dialog::backdrop { background: rgba(15,23,42,0.42); backdrop-filter: blur(3px); }
.product-ai-dialog-card { display: grid; gap: 16px; max-height: inherit; overflow: auto; padding: 22px; border: 1px solid var(--glass-border); border-radius: 12px; background: var(--surface, #fff); }
.product-ai-dialog-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.product-ai-dialog-heading h2 { margin: 0 0 5px; font-size: 1.02rem; }
.product-ai-dialog-heading p, .product-ai-dialog-status { margin: 0; color: var(--muted); font-size: 0.82rem; line-height: 1.5; }
.product-ai-preview { display: grid; gap: 12px; }
.product-ai-preview section { display: grid; gap: 5px; padding: 12px; border: 1px solid rgba(var(--action-rgb),0.13); border-radius: 8px; background: rgba(255,255,255,0.54); }
.product-ai-preview h3 { margin: 0; color: var(--muted); font-size: 0.7rem; font-weight: 830; letter-spacing: 0.04em; text-transform: uppercase; }
.product-ai-preview p, .product-ai-preview ul { margin: 0; color: var(--ink); font-size: 0.84rem; line-height: 1.5; }
.product-ai-preview ul { padding-left: 18px; }
.product-ai-dialog-actions { display: flex; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.catalog-detail-main { display: grid; align-content: start; gap: 12px; min-width: 0; }
.catalog-detail-heading { min-height: 40px; display: flex; align-items: center; justify-content: space-between; gap: 10px 16px; }
.catalog-detail-heading .catalog-eyebrow { flex: 1 1 auto; margin: 0; }
.catalog-detail-main h1 { max-width: 28ch; margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: clamp(0.725rem, 1.25vw, 0.95rem); line-height: 1.08; letter-spacing: -0.018em; overflow-wrap: anywhere; word-break: normal; }
.catalog-detail-main p { margin: 0; color: var(--muted); line-height: 1.55; }
.catalog-plain-description-row { justify-self: start; display: flex; align-items: center; gap: 8px; flex-wrap: wrap; max-width: 100%; }
.catalog-detail-main .catalog-plain-description { display: inline-flex; width: fit-content; max-width: 100%; padding: 6px 11px; border-radius: 999px; background: rgba(62,135,205,0.12); color: var(--ink); font-weight: 860; line-height: 1.25; }
.catalog-dummy-feedback { display: inline-flex; align-items: center; gap: 6px; flex-wrap: wrap; color: var(--muted); font-size: 0.78rem; font-weight: 760; }
.catalog-dummy-feedback > strong { color: var(--brand-magenta); font-weight: 860; }
.catalog-dummy-feedback button { min-height: 28px; border: 1px solid rgba(62,135,205,0.24); border-radius: 999px; padding: 0 10px; background: rgba(255,255,255,0.72); color: var(--action); font: inherit; cursor: pointer; }
.catalog-dummy-feedback button:hover { background: rgba(62,135,205,0.12); }
.catalog-dummy-feedback button:disabled { opacity: 0.58; cursor: wait; }
.catalog-dummy-feedback-options { display: inline-flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.catalog-inventory-toolbar { margin-bottom: 10px; }
.catalog-private-detail { display: grid; gap: 12px; }
.catalog-private-detail-head { display: flex; align-items: end; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.catalog-private-detail-head h2 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: 1.28rem; line-height: 1.12; }
.product-detail-sections.catalog-private-sections { grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: start; }
.catalog-private-inventory-primary, .catalog-private-projects { grid-column: span 2; }
.catalog-private-side-stack { display: grid; align-content: start; gap: 12px; min-width: 0; }
.catalog-private-side-stack .product-notes-field textarea { min-height: 8rem; }
.catalog-private-sections > .simple-panel,
.catalog-private-side-stack > .simple-panel {
  border-color: rgba(254,212,121,0.34);
  background: linear-gradient(145deg, rgba(254,212,121,0.09), transparent 34%), var(--glass);
  box-shadow: var(--glass-shadow), inset 0 2px 0 rgba(254,212,121,0.48);
}
html[data-design="blue"] .catalog-private-sections > .simple-panel,
html[data-design="blue"] .catalog-private-side-stack > .simple-panel {
  border-color: rgba(255,217,106,0.26);
  background: linear-gradient(145deg, rgba(255,217,106,0.06), transparent 36%), var(--glass);
  box-shadow: var(--glass-shadow), inset 0 2px 0 rgba(255,217,106,0.36);
}
.catalog-private-summary { margin: 4px 0 0; }
.product-detail-sections.private-product-dashboard-grid {
  grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
  align-items: start;
}
.private-dashboard-main-column,
.private-dashboard-side-column {
  min-width: 0;
  display: grid;
  align-content: start;
  gap: 12px;
}
.private-dashboard-main-pair {
  min-width: 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: start;
  gap: 12px;
}
.private-product-dashboard-grid .simple-panel {
  min-width: 0;
  border-color: rgba(254,212,121,0.34);
  background: linear-gradient(145deg, rgba(254,212,121,0.08), transparent 32%), var(--glass);
  box-shadow: var(--glass-shadow), inset 0 2px 0 rgba(254,212,121,0.42);
}
.private-dashboard-inventory .catalog-private-summary,
.catalog-private-inventory-primary .catalog-private-summary {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.private-dashboard-inventory .product-inline-form,
.catalog-private-inventory-primary .product-inline-form {
  grid-template-columns: minmax(150px, 0.7fr) minmax(260px, 1.3fr);
}
.private-dashboard-projects .account-inline-action {
  min-height: 34px;
  margin-top: 2px;
  padding: 0 12px;
  border-radius: 8px;
  font-size: 0.78rem;
  box-shadow: none;
}
.private-dashboard-projects:has(.account-inline-action) {
  gap: 12px;
}
html[data-design="blue"] .private-product-dashboard-grid .simple-panel {
  border-color: rgba(255,217,106,0.26);
  background: linear-gradient(145deg, rgba(255,217,106,0.06), transparent 34%), var(--glass);
  box-shadow: var(--glass-shadow), inset 0 2px 0 rgba(255,217,106,0.34);
}
@media (max-width: 1180px) {
  .product-detail-sections.catalog-private-sections { grid-template-columns: minmax(0, 1fr); }
  .catalog-private-inventory-primary, .catalog-private-projects { grid-column: auto; }
  .catalog-private-side-stack { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .private-dashboard-inventory .product-inventory-action,
  .catalog-private-inventory-primary .product-inventory-action {
    grid-template-columns: minmax(96px, 0.72fr) minmax(84px, 0.56fr) minmax(120px, 1fr) auto;
  }
  .private-dashboard-inventory .product-inventory-action strong,
  .private-dashboard-inventory .product-inventory-action label:nth-of-type(2),
  .private-dashboard-inventory .product-inventory-action button,
  .catalog-private-inventory-primary .product-inventory-action strong,
  .catalog-private-inventory-primary .product-inventory-action label:nth-of-type(2),
  .catalog-private-inventory-primary .product-inventory-action button {
    grid-column: auto;
  }
}
@media (max-width: 760px) {
  .catalog-private-side-stack { grid-template-columns: minmax(0, 1fr); }
  .product-detail-sections.private-product-dashboard-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .private-dashboard-main-column,
  .private-dashboard-side-column,
  .private-dashboard-main-pair {
    display: contents;
  }
  .private-dashboard-inventory { order: 1; }
  .private-dashboard-projects { order: 2; }
  .private-dashboard-movements { order: 3; }
  .private-dashboard-orders { order: 4; }
  .private-dashboard-product-data { order: 5; }
  .private-dashboard-notes { order: 6; }
  .private-dashboard-statistics { order: 7; }
  .private-dashboard-assortment { order: 8; }
  .private-product-dashboard-grid .product-feedback-panel { order: 9; }
  .private-dashboard-inventory .catalog-private-summary,
  .catalog-private-inventory-primary .catalog-private-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .private-dashboard-inventory .product-inline-form,
  .catalog-private-inventory-primary .product-inline-form {
    grid-template-columns: minmax(0, 1fr);
  }
  .private-dashboard-inventory .product-inventory-action,
  .catalog-private-inventory-primary .product-inventory-action {
    grid-template-columns: minmax(82px, 0.55fr) minmax(0, 1fr);
  }
  .private-dashboard-inventory .product-inventory-action strong,
  .catalog-private-inventory-primary .product-inventory-action strong {
    grid-column: 1 / -1;
    grid-row: 1;
  }
  .private-dashboard-inventory .product-inventory-action label:nth-of-type(1),
  .catalog-private-inventory-primary .product-inventory-action label:nth-of-type(1) {
    grid-column: 1;
    grid-row: 2;
  }
  .private-dashboard-inventory .product-inventory-action button,
  .catalog-private-inventory-primary .product-inventory-action button {
    grid-column: 2;
    grid-row: 2;
    width: 100%;
  }
  .private-dashboard-inventory .product-inventory-action label:nth-of-type(2),
  .catalog-private-inventory-primary .product-inventory-action label:nth-of-type(2) {
    grid-column: 1 / -1;
    grid-row: 3;
  }
}
.catalog-manufacturer-status { display: grid; gap: 4px; padding: 11px 12px; border-radius: 8px; background: rgba(254,212,121,0.30); border: 1px solid rgba(123,91,5,0.16); color: var(--ink); box-shadow: var(--child-shadow); }
.catalog-manufacturer-status strong { font-size: 0.84rem; font-weight: 900; line-height: 1.2; }
.catalog-manufacturer-status span { color: var(--muted); font-size: 0.78rem; line-height: 1.38; }
.catalog-manufacturer-status a { width: fit-content; color: var(--action); font-size: 0.78rem; font-weight: 840; text-decoration: none; }
.catalog-manufacturer-status a:hover { text-decoration: underline; }
.catalog-eyebrow a { color: inherit; text-decoration: none; }
.catalog-eyebrow a:hover { color: var(--action); text-decoration: underline; }
.catalog-offers { display: grid; gap: 8px; padding: 0 14px 14px; border-radius: 8px; background: var(--glass-child); box-shadow: var(--child-shadow); overflow: hidden; }
.catalog-offers-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; flex-wrap: wrap; }
.catalog-offers h2 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: 1.08rem; line-height: 1.12; }
.catalog-offers-head > span { min-height: 26px; display: inline-flex; align-items: center; padding: 0 9px; border-radius: 999px; background: rgba(255,255,255,0.52); color: var(--muted); font-size: 0.76rem; font-weight: 820; white-space: nowrap; }
.catalog-offer-list { display: grid; gap: 5px; margin: 0 -14px; }
.catalog-offer-item { position: relative; min-height: 46px; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 12px; padding: 8px 14px; border: 0; border-radius: 0; background: rgba(254,212,121,0.30); color: var(--ink); text-decoration: none; box-shadow: none; }
.catalog-offer-item:first-child { border-radius: 8px 8px 0 0; }
.catalog-offer-item + .catalog-offer-item::before { content: ""; position: absolute; left: 14px; right: 14px; top: -3px; height: 1px; background: rgba(var(--action-rgb),0.72); }
.catalog-offer-item:hover { color: var(--ink); text-decoration: none; background: rgba(254,212,121,0.62); }
.catalog-offer-copy { min-width: 0; display: grid; gap: 3px; }
.catalog-offer-copy strong { min-width: 0; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; color: inherit; font-size: 0.8rem; line-height: 1.22; font-weight: 860; overflow-wrap: anywhere; }
.catalog-offer-copy small { color: var(--muted); font-size: 0.72rem; line-height: 1.2; font-weight: 820; }
.catalog-offer-price { display: grid; justify-items: end; gap: 4px; white-space: nowrap; }
.catalog-offer-price b { color: var(--ink); font-size: 0.8rem; line-height: 1.1; }
.catalog-offers.is-region-available .catalog-offer-price-amount { font-size: 1.6rem; }
.catalog-offer-price em { min-height: 18px; display: inline-flex; align-items: center; justify-content: center; gap: 6px; color: #237650; font-size: 0.68rem; font-style: normal; font-weight: 860; white-space: nowrap; }
.catalog-offer-price em i { width: 7px; height: 7px; display: block; border-radius: 999px; background: #2f9d63; box-shadow: 0 0 0 3px rgba(47,157,99,0.12); }
.catalog-offers-region-notice { margin: 0 -14px; padding: 10px 14px; background: rgba(156,49,88,0.10); border-bottom: 1px solid rgba(156,49,88,0.18); color: #8c284c; font-size: 0.84rem; line-height: 1.35; font-weight: 880; }
.catalog-offers-empty { margin: 0; color: var(--muted); font-size: 0.86rem; }
.catalog-offers .catalog-affiliate-note { position: relative; margin: 0 -14px; padding: 8px 14px 0; border-top: 1px solid rgba(0,0,0,0.20); color: var(--muted); font-size: 0.76rem; line-height: 1.32; overflow: visible; }
.catalog-substitutes { display: grid; gap: 12px; margin-top: 8px; padding: 14px; border: 1px solid var(--glass-border); border-radius: 8px; background: var(--glass); box-shadow: var(--glass-shadow); backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.catalog-substitutes[hidden] { display: none; }
.catalog-substitutes-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.catalog-substitutes h2 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: clamp(1.1rem, 2vw, 1.42rem); line-height: 1.08; }
.catalog-substitute-counts { display: flex; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.catalog-substitute-counts span { min-height: 28px; display: inline-flex; align-items: center; padding: 0 10px; border-radius: 999px; background: var(--glass-child); color: var(--muted); font-size: 0.78rem; font-weight: 820; white-space: nowrap; }
.catalog-substitute-filters { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; padding: 4px; border-radius: 999px; background: rgba(250,246,237,0.62); width: fit-content; max-width: 100%; }
.catalog-substitute-filter-button { min-height: 30px; display: inline-flex; align-items: center; justify-content: center; gap: 6px; border: 0; border-radius: 999px; padding: 0 10px; background: transparent; color: var(--muted); cursor: pointer; font: inherit; font-size: 0.78rem; font-weight: 820; white-space: nowrap; }
.catalog-substitute-filter-button span { color: inherit; font-size: 0.74rem; font-weight: 820; }
.catalog-substitute-filter-button.is-active { background: #fff; color: var(--ink); box-shadow: 0 2px 10px rgba(75,70,58,0.10); }
.catalog-substitute-filter-button:focus-visible { outline: 2px solid rgba(var(--action-rgb),0.42); outline-offset: 2px; }
.catalog-spec-criteria { display: flex; align-items: center; gap: 7px; flex-wrap: wrap; }
.catalog-spec-criterion { min-height: 32px; display: inline-flex; align-items: center; gap: 7px; padding: 0 9px; border-radius: 999px; background: var(--glass-child); color: var(--ink); cursor: pointer; font-size: 0.76rem; font-weight: 820; }
.catalog-spec-criterion input { width: 16px; height: 16px; accent-color: var(--action); flex: 0 0 auto; }
.catalog-spec-criterion span { color: var(--muted); }
.catalog-spec-criterion b { font-weight: 860; white-space: nowrap; }
.catalog-alternative-facets { display: flex; align-items: end; gap: 8px; flex-wrap: wrap; }
.catalog-alternative-facet { min-width: 132px; display: grid; gap: 4px; }
.catalog-alternative-facet span { color: var(--muted); font-size: 0.72rem; font-weight: 840; line-height: 1.15; }
.catalog-alternative-facet select { width: 100%; min-height: 34px; border: 1px solid rgba(255,255,255,0.66); border-radius: 8px; padding: 0 30px 0 10px; background: rgba(255,255,255,0.58); color: var(--ink); font: inherit; font-size: 0.78rem; font-weight: 780; box-shadow: var(--child-shadow); }
.catalog-alternative-facet.is-active select { border-color: rgba(var(--action-rgb),0.44); background: rgba(72,139,211,0.10); box-shadow: var(--child-shadow), 0 0 0 1px rgba(var(--action-rgb),0.12); }
.catalog-alternative-facet select:focus-visible { outline: 2px solid rgba(var(--action-rgb),0.42); outline-offset: 2px; }
.catalog-mini-card-grid { display: grid; grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 18px 10px; padding-top: 10px; }
.catalog-mini-card-grid.product-view-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.catalog-mini-card-grid.product-view-grid-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.catalog-mini-card-grid.product-view-grid-8 { grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 18px 10px; }
.catalog-alternative-more { justify-self: center; margin-top: 4px; }
.catalog-alternative-more[hidden] { display: none; }
.catalog-mini-card-grid.product-view-list, .catalog-mini-card-grid.product-view-list-image { grid-template-columns: 1fr; gap: 8px; padding-top: 6px; }
.catalog-mini-card { position: relative; min-width: 0; display: grid; align-content: start; gap: 4px; padding: 16px 10px 10px; border-radius: 8px; background: rgba(255,255,255,0.20); border: 1px solid var(--glass-border); color: inherit; text-decoration: none; box-shadow: var(--glass-shadow); backdrop-filter: blur(2px); -webkit-backdrop-filter: blur(2px); overflow: visible; transition: background 120ms ease, border-color 120ms ease; }
.catalog-mini-card.is-high-substitute { border-color: rgba(45, 171, 96, 0.86); box-shadow: var(--glass-shadow), 0 0 0 1px rgba(45,171,96,0.30), 0 10px 32px rgba(45,171,96,0.16); }
.catalog-mini-card.is-medium-substitute { border-color: rgba(255, 177, 60, 0.76); box-shadow: var(--glass-shadow), 0 0 0 1px rgba(255,177,60,0.20); }
.catalog-mini-card.is-low-substitute, .catalog-accessories .catalog-mini-card { border-color: rgba(196, 72, 82, 0.58); }
.catalog-mini-card:hover { color: inherit; text-decoration: none; background: rgba(255,255,255,0.40); border-color: rgba(255,255,255,0.42); }
.catalog-mini-card.is-high-substitute:hover { border-color: rgba(45,171,96,0.92); }
.catalog-mini-card.is-medium-substitute:hover { border-color: rgba(255,177,60,0.86); }
.catalog-mini-card.is-low-substitute:hover, .catalog-accessories .catalog-mini-card:hover { border-color: rgba(196,72,82,0.70); }
.catalog-mini-card-link { display: contents; color: inherit; text-decoration: none; }
.catalog-mini-card-link:hover { color: inherit; text-decoration: none; }
.catalog-mini-card-media { aspect-ratio: 1 / 1; display: grid; place-items: center; margin: -6px -10px 4px; border-radius: 8px 8px 0 0; overflow: hidden; background: var(--glass-child); color: var(--muted); }
.catalog-mini-card-media img { width: auto; height: auto; max-width: 100%; max-height: 100%; display: block; object-fit: contain; object-position: center; }
.catalog-mini-card-media svg { width: 100%; height: 100%; padding: 24%; fill: none; stroke: currentColor; stroke-width: 2; }
.catalog-mini-card-score { position: absolute; z-index: 2; top: 0; left: 50%; min-height: 20px; display: inline-flex; align-items: center; justify-content: center; padding: 0 9px; border: 1px solid rgba(255,255,255,0.48); border-radius: 999px; background: rgba(255,255,255,0.42); color: var(--action); font-size: 0.68rem; font-weight: 880; line-height: 1; white-space: nowrap; box-shadow: 0 4px 16px rgba(32,32,29,0.06), inset 0 1px 0 rgba(255,255,255,0.58); transform: translate(-50%, -50%); backdrop-filter: blur(8px) saturate(1.12); -webkit-backdrop-filter: blur(8px) saturate(1.12); }
.catalog-mini-card-score[data-substitutability="high"] { background: rgba(236,250,243,0.52); color: #25834d; }
.catalog-mini-card-score[data-substitutability="medium"] { background: rgba(255,245,224,0.54); color: #9a631b; }
.catalog-mini-card-score[data-substitutability="low"] { background: rgba(252,238,240,0.50); color: #9c4551; }
.catalog-mini-card-copy { min-width: 0; display: contents; }
.catalog-mini-card strong { min-width: 0; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; overflow: hidden; color: var(--ink); font-family: "Manrope", system-ui, sans-serif; font-size: 0.78rem; font-weight: 820; line-height: 1.17; overflow-wrap: anywhere; }
.catalog-mini-card small { min-width: 0; display: -webkit-box; -webkit-box-orient: vertical; overflow: hidden; color: var(--muted); font-size: 0.66rem; font-weight: 760; line-height: 1.22; overflow-wrap: anywhere; }
.catalog-mini-card-meta { -webkit-line-clamp: 1; line-clamp: 1; }
.catalog-mini-card-price { color: #25834d; -webkit-line-clamp: 1; line-clamp: 1; }
.catalog-mini-card-kind { color: var(--action); -webkit-line-clamp: 1; line-clamp: 1; }
.catalog-mini-card-specs { -webkit-line-clamp: 2; line-clamp: 2; }
.catalog-mini-card-specs b { color: rgba(32,32,29,0.76); font-weight: 880; }
.catalog-mini-card-specs[data-match="gleich"] b, .catalog-mini-card-specs[data-match="nah"] b { color: #25834d; }
.catalog-mini-card-specs[data-match="anders"] b { color: #9c4551; }
.catalog-mini-card-actions { position: relative; z-index: 4; align-self: end; width: 100%; margin-top: 5px; grid-template-columns: auto minmax(0, 1fr) auto; grid-template-areas: "compat compat compat" "like . inventory"; gap: 4px 6px; }
.catalog-mini-card-actions .product-community-meta { display: none; }
.catalog-mini-card-actions .product-community-like-button, .catalog-mini-card-actions .product-add-inventory-button { width: 34px; height: 34px; min-height: 34px; }
.catalog-mini-card-actions .product-community-like-button svg { width: 20px; height: 20px; }
.catalog-mini-card-actions .product-add-inventory-button svg { width: 18px; height: 18px; }
.catalog-mini-card-actions .product-compatibility-text-action { --compat-toggle-width: 26px; --compat-toggle-height: 15px; --compat-toggle-knob: 11px; --compat-toggle-travel: 11px; min-height: 22px; gap: 4px; padding: 0; font-size: 0.66rem; }
.catalog-mini-card-actions .compatibility-toggle-state { font-size: 0.62rem; }
.catalog-mini-card-grid.product-view-grid-4 .catalog-mini-card { gap: 6px; padding: 18px 12px 12px; }
.catalog-mini-card-grid.product-view-grid-4 .catalog-mini-card-media { margin: -8px -12px 6px; }
.catalog-mini-card-grid.product-view-grid-4 .catalog-mini-card strong { font-size: 0.9rem; -webkit-line-clamp: 3; line-clamp: 3; }
.catalog-mini-card-grid.product-view-grid-4 .catalog-mini-card small { font-size: 0.72rem; }
.catalog-mini-card-grid.product-view-grid-6 .catalog-mini-card { gap: 5px; padding: 16px 10px 10px; }
.catalog-mini-card-grid.product-view-grid-6 .catalog-mini-card strong { font-size: 0.82rem; }
.catalog-mini-card-grid.product-view-grid-8 .catalog-mini-card { gap: 4px; padding: 16px 10px 10px; }
.catalog-mini-card-grid.product-view-list .catalog-mini-card, .catalog-mini-card-grid.product-view-list-image .catalog-mini-card { min-height: 56px; align-items: center; gap: 10px; padding: 9px 12px; overflow: hidden; }
.catalog-mini-card-grid.product-view-list .catalog-mini-card { grid-template-columns: minmax(0, 1fr) auto auto; }
.catalog-mini-card-grid.product-view-list-image .catalog-mini-card { grid-template-columns: 58px minmax(0, 1fr) auto auto; }
.catalog-mini-card-grid.product-view-list .catalog-mini-card-media { display: none; }
.catalog-mini-card-grid.product-view-list-image .catalog-mini-card-media { grid-column: 1; grid-row: 1; width: 58px; height: 58px; aspect-ratio: auto; margin: 0; border-radius: 8px; }
.catalog-mini-card-grid.product-view-list .catalog-mini-card-score, .catalog-mini-card-grid.product-view-list-image .catalog-mini-card-score { position: static; grid-column: 2; grid-row: 1; justify-self: end; transform: none; }
.catalog-mini-card-grid.product-view-list-image .catalog-mini-card-score { grid-column: 3; }
.catalog-mini-card-grid.product-view-list .catalog-mini-card-copy, .catalog-mini-card-grid.product-view-list-image .catalog-mini-card-copy { grid-row: 1; display: flex; align-items: baseline; gap: 9px; min-width: 0; overflow: hidden; white-space: nowrap; -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 42px), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - 42px), transparent); }
.catalog-mini-card-grid.product-view-list .catalog-mini-card-copy { grid-column: 1; }
.catalog-mini-card-grid.product-view-list-image .catalog-mini-card-copy { grid-column: 2; }
.catalog-mini-card-grid.product-view-list .catalog-mini-card strong, .catalog-mini-card-grid.product-view-list-image .catalog-mini-card strong { display: block; flex: 0 1 auto; min-width: 0; max-width: none; overflow: hidden; font-size: 0.9rem; line-height: 1.2; white-space: nowrap; text-overflow: ellipsis; overflow-wrap: normal; -webkit-line-clamp: initial; line-clamp: initial; }
.catalog-mini-card-grid.product-view-list .catalog-mini-card small, .catalog-mini-card-grid.product-view-list-image .catalog-mini-card small { display: block; flex: 0 0 auto; max-width: none; overflow: visible; color: var(--muted); font-size: 0.78rem; line-height: 1.2; white-space: nowrap; overflow-wrap: normal; -webkit-line-clamp: initial; line-clamp: initial; }
.catalog-mini-card-grid.product-view-list .catalog-mini-card-price, .catalog-mini-card-grid.product-view-list-image .catalog-mini-card-price { color: #25834d; font-weight: 840; }
.catalog-mini-card-grid.product-view-list .catalog-mini-card small::before, .catalog-mini-card-grid.product-view-list-image .catalog-mini-card small::before { content: "|"; margin-right: 9px; color: rgba(112,109,101,0.62); font-weight: 720; }
.catalog-mini-card-grid.product-view-list .catalog-mini-card-specs b, .catalog-mini-card-grid.product-view-list-image .catalog-mini-card-specs b { color: rgba(32,32,29,0.76); }
.catalog-mini-card-grid.product-view-list .catalog-mini-card-actions, .catalog-mini-card-grid.product-view-list-image .catalog-mini-card-actions { grid-row: 1; width: auto; margin-top: 0; grid-template-columns: auto auto; grid-template-areas: "like inventory"; align-self: center; }
.catalog-mini-card-grid.product-view-list .catalog-mini-card-actions { grid-column: 3; }
.catalog-mini-card-grid.product-view-list-image .catalog-mini-card-actions { grid-column: 4; }
@media (max-width: 980px) {
    .catalog-mini-card-grid.product-view-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .catalog-mini-card-grid.product-view-grid-6 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .catalog-mini-card-grid.product-view-grid-8 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
    .catalog-mini-card-grid.product-view-grid-4,
    .catalog-mini-card-grid.product-view-grid-6,
    .catalog-mini-card-grid.product-view-grid-8 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .catalog-mini-card-grid.product-view-grid-4 .catalog-mini-card-actions,
    .catalog-mini-card-grid.product-view-grid-6 .catalog-mini-card-actions,
    .catalog-mini-card-grid.product-view-grid-8 .catalog-mini-card-actions { overflow: clip; }
    .catalog-mini-card-grid.product-view-list .catalog-mini-card { grid-template-columns: minmax(0, 1fr) auto; }
    .catalog-mini-card-grid.product-view-list .catalog-mini-card-score { display: none; }
    .catalog-mini-card-grid.product-view-list-image .catalog-mini-card { grid-template-columns: 52px minmax(0, 1fr) auto; }
    .catalog-mini-card-grid.product-view-list-image .catalog-mini-card-media { width: 52px; height: 52px; }
    .catalog-mini-card-grid.product-view-list-image .catalog-mini-card-score { display: none; }
    .catalog-mini-card-grid.product-view-list .catalog-mini-card-actions { grid-column: 2; }
    .catalog-mini-card-grid.product-view-list-image .catalog-mini-card-actions { grid-column: 3; }
}
.catalog-substitute-list { display: grid; gap: 8px; }
.catalog-substitute-item { min-height: 54px; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 8px; background: var(--glass-child); color: var(--ink); text-decoration: none; box-shadow: var(--child-shadow); }
.catalog-substitute-item[hidden] { display: none; }
.catalog-substitute-item:hover { color: var(--action); text-decoration: none; }
.catalog-substitute-item span { min-width: 0; display: grid; gap: 2px; }
.catalog-substitute-item strong { overflow-wrap: anywhere; }
.catalog-substitute-item small { color: var(--muted); font-size: 0.78rem; line-height: 1.3; overflow-wrap: anywhere; }
.catalog-substitute-delta { color: rgba(32,32,29,0.74); }
.catalog-substitute-item em { justify-self: end; min-height: 25px; display: inline-flex; align-items: center; padding: 0 8px; border-radius: 999px; background: rgba(255,255,255,0.50); color: var(--muted); font-size: 0.74rem; font-style: normal; font-weight: 820; white-space: nowrap; }
.catalog-substitute-item em[data-effort-group="direct"] { color: #237650; }
.catalog-substitute-item em[data-effort-group="adaptable"] { color: #7b5b19; }
.catalog-substitute-item em[data-effort-group="blocked"] { color: #9f5d54; }
.catalog-substitute-note { margin: 0; color: var(--muted); }
.catalog-spec-section { gap: 10px; }
.catalog-spec-explanations { max-width: 78ch; margin-top: 12px; }
.catalog-spec-explanations h3 { margin: 0 0 12px; color: inherit; font-family: inherit; font-size: 1.125rem; font-weight: 700; line-height: 1.4; }
.catalog-spec-explanations ul { display: grid; gap: 8px; margin: 0; padding-left: 1.25em; }
.catalog-spec-explanations li { line-height: 1.6; overflow-wrap: anywhere; }
.catalog-spec-help { margin: 6px 0 0; color: var(--muted); font-size: 0.86rem; font-weight: 720; line-height: 1.35; }
.catalog-spec-list { display: flex; flex-wrap: wrap; gap: 7px; }
.catalog-spec-item { flex: 0 1 148px; min-width: min(100%, 132px); min-height: 52px; display: grid; align-content: center; gap: 2px; padding: 8px 10px; border-radius: 8px; background: var(--glass-child); color: var(--ink); box-shadow: var(--child-shadow); }
.catalog-spec-toggle { grid-template-columns: auto minmax(0, 1fr); align-items: center; align-content: center; column-gap: 8px; border: 1px solid transparent; cursor: pointer; transition: border-color 120ms ease, background 120ms ease, box-shadow 120ms ease; }
.catalog-spec-toggle input { width: 16px; height: 16px; margin: 0; accent-color: var(--action); }
.catalog-spec-toggle-copy { min-width: 0; display: grid; gap: 2px; }
.catalog-spec-toggle.is-core-spec { border-color: rgba(72,139,211,0.20); }
.catalog-spec-toggle.is-anchor-spec { border-color: rgba(72,139,211,0.30); }
.catalog-spec-toggle.is-active { border-color: rgba(var(--action-rgb),0.44); background: rgba(72,139,211,0.10); box-shadow: var(--child-shadow), 0 0 0 1px rgba(var(--action-rgb),0.12); }
.catalog-spec-toggle:hover { background: rgba(255,255,255,0.34); }
.catalog-spec-item strong { font-size: 0.84rem; line-height: 1.15; overflow-wrap: anywhere; }
.catalog-spec-item small { color: var(--muted); font-size: 0.74rem; line-height: 1.25; overflow-wrap: anywhere; }
.catalog-data-availability { gap: 10px; }
.catalog-data-availability-list { display: grid; gap: 12px; }
.catalog-data-availability-group { display: grid; gap: 8px; }
.catalog-data-availability-group-head { display: flex; align-items: baseline; gap: 8px; flex-wrap: wrap; }
.catalog-data-availability-group-head strong { color: var(--ink); font-size: 0.88rem; font-weight: 900; }
.catalog-data-availability-group-head span { color: var(--muted); font-size: 0.78rem; line-height: 1.3; }
.catalog-data-field-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 8px; }
.catalog-data-field { min-width: 0; display: grid; align-content: start; gap: 6px; padding: 9px; border-radius: 8px; background: var(--glass-child); color: var(--muted); box-shadow: var(--child-shadow); }
.catalog-data-field h3 { margin: 0; color: var(--ink); font-size: 0.78rem; line-height: 1.2; font-weight: 900; overflow-wrap: anywhere; }
.catalog-data-values { display: grid; gap: 4px; }
.catalog-data-values p, .catalog-data-values a { margin: 0; color: rgba(32,32,29,0.72); font-size: 0.72rem; line-height: 1.35; overflow-wrap: anywhere; word-break: break-word; }
.catalog-data-values a { color: var(--action); text-decoration: none; }
.catalog-data-values a:hover { text-decoration: underline; }
.catalog-data-images { display: grid; grid-template-columns: repeat(auto-fill, minmax(52px, 1fr)); gap: 6px; }
.catalog-data-images a { min-width: 0; display: block; border-radius: 8px; overflow: hidden; background: rgba(255,255,255,0.70); box-shadow: inset 0 0 0 1px rgba(255,255,255,0.80); }
.catalog-data-images img { width: 100%; aspect-ratio: 1; display: block; object-fit: contain; padding: 4px; background: #fff; }
.catalog-data-field small { color: rgba(32,32,29,0.58); font-size: 0.68rem; line-height: 1.25; }
.catalog-lightbox { position: fixed; inset: 0; z-index: 90; display: grid; place-items: center; padding: 32px; background: rgba(12,19,34,0.82); }
.catalog-lightbox img { max-width: min(92vw, 1280px); max-height: 88vh; object-fit: contain; border-radius: 8px; background: #fff; box-shadow: 0 24px 80px rgba(0,0,0,0.28); }
.catalog-lightbox-close { position: fixed; top: 18px; right: 18px; width: 40px; height: 40px; border: 0; border-radius: 999px; background: #fff; color: var(--ink); font-size: 1.6rem; line-height: 1; cursor: pointer; }
.catalog-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 0; }
.catalog-facts div { min-width: 0; padding: 11px; border-radius: 8px; background: var(--glass-child); }
.catalog-facts dt { color: var(--muted); font-size: 0.76rem; font-weight: 820; }
.catalog-facts dd { margin: 4px 0 0; color: var(--ink); font-weight: 820; overflow-wrap: anywhere; }
.catalog-fact-with-link { display: flex; align-items: flex-start; gap: 6px; flex-direction: column; }
.catalog-manufacturer-info-link { display: inline-flex; align-items: flex-start; flex-direction: column; gap: 6px; max-width: 100%; color: inherit; text-decoration: none; }
.catalog-manufacturer-name { color: var(--ink); font-weight: 840; }
.catalog-manufacturer-logo-wrap { display: inline-flex; align-items: center; max-width: 150px; min-height: 32px; }
.catalog-manufacturer-logo { display: block; width: auto; max-width: 150px; height: auto; max-height: 34px; object-fit: contain; object-position: left center; }
.catalog-manufacturer-site-link, .catalog-manufacturer-product-link { display: inline-flex; align-items: center; gap: 4px; color: var(--action); font-size: 0.72rem; font-weight: 840; line-height: 1.1; text-decoration: none; white-space: nowrap; }
.catalog-manufacturer-site-link svg, .catalog-manufacturer-product-link svg { width: 13px; height: 13px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.catalog-manufacturer-info-link:hover .catalog-manufacturer-site-link, .catalog-manufacturer-product-link:hover { text-decoration: underline; }
.catalog-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.catalog-actions form { margin: 0; }
.product-action-bar { display: grid; grid-template-columns: auto auto minmax(0, 1fr) auto; grid-template-areas: "compat compat compat compat" "like bookmark meta inventory"; align-items: center; gap: 6px 8px; width: min(500px, 100%); min-width: 0; }
.product-detail-action-row { position: absolute; top: 18px; right: 18px; z-index: 5; }
.product-detail-metrics { display: inline-flex; align-items: center; gap: 6px; width: max-content; min-height: 44px; padding: 4px; border: 1px solid rgba(72,83,97,0.10); border-radius: 999px; background: rgba(255,255,255,0.78); box-shadow: 0 9px 24px rgba(61,67,75,0.10), inset 0 1px 0 rgba(255,255,255,0.92); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.product-compatibility-text-action { --compat-toggle-width: 32px; --compat-toggle-height: 18px; --compat-toggle-knob: 14px; --compat-toggle-travel: 14px; grid-area: compat; justify-self: start; display: inline-flex; align-items: center; gap: 6px; max-width: 100%; min-height: 24px; border: 0; border-radius: 999px; padding: 0 2px; background: transparent; color: var(--ink); cursor: pointer; font: inherit; font-size: 0.82rem; font-weight: 820; line-height: 1.08; text-decoration: none; white-space: nowrap; overflow-wrap: normal; }
.product-compatibility-text-action:disabled { opacity: 0.56; cursor: progress; }
.compatibility-toggle-label { text-decoration: none; }
.compatibility-toggle-switch { position: relative; flex: 0 0 auto; width: var(--compat-toggle-width); height: var(--compat-toggle-height); border-radius: 999px; background: rgba(112,109,101,0.28); box-shadow: inset 0 1px 2px rgba(70,66,56,0.16), 0 4px 12px rgba(87,69,25,0.10); transition: background 140ms ease, box-shadow 140ms ease; }
.compatibility-toggle-switch span { position: absolute; top: 2px; left: 2px; width: var(--compat-toggle-knob); height: var(--compat-toggle-knob); border-radius: 999px; background: rgba(255,255,255,0.94); box-shadow: 0 2px 5px rgba(70,66,56,0.22); transition: transform 140ms ease, background 140ms ease; }
.product-compatibility-text-action[aria-pressed="true"] .compatibility-toggle-switch { background: var(--action); box-shadow: inset 0 1px 2px rgba(44,80,128,0.14), 0 5px 14px rgba(var(--action-rgb),0.18); }
.product-compatibility-text-action[aria-pressed="true"] .compatibility-toggle-switch span { transform: translateX(var(--compat-toggle-travel)); background: #ffd36a; }
.compatibility-toggle-state { color: var(--muted); font-size: 0.72rem; font-weight: 900; line-height: 1; text-transform: lowercase; }
.product-compatibility-text-action[aria-pressed="true"] .compatibility-toggle-state-off, .product-compatibility-text-action:not([aria-pressed="true"]) .compatibility-toggle-state-on { display: none; }
.product-compatibility-text-action[aria-pressed="true"] .compatibility-toggle-state-on { color: var(--action); }
.product-community-meta { grid-area: meta; justify-self: center; width: fit-content; max-width: 100%; min-width: 0; min-height: 24px; display: flex; align-items: center; flex-wrap: wrap; gap: 0; padding: 0 9px; border: 1px solid rgba(72,83,97,0.08); border-radius: 999px; background: rgba(255,255,255,0.46); color: rgba(32,32,29,0.62); box-shadow: inset 0 1px 0 rgba(255,255,255,0.66); font-size: 0.72rem; font-weight: 780; line-height: 1.18; }
.product-community-meta.is-empty { display: none; }
.product-community-meta span { min-width: 0; white-space: nowrap; }
.product-community-meta span + span::before { content: "|"; display: inline-block; margin: 0 8px; opacity: 0.78; }
.product-community-meta .product-community-score { font-weight: 930; }
.product-action-counter, .product-detail-counter { position: relative; width: 36px; height: 36px; display: inline-grid; place-items: center; border: 0; background: transparent; color: var(--action); line-height: 1; }
.product-action-counter svg, .product-detail-counter svg { width: 36px; height: 36px; display: block; fill: transparent; stroke: currentColor; stroke-width: 1.25; stroke-linejoin: round; stroke-linecap: round; overflow: visible; }
.product-action-counter .icon-badge, .product-detail-counter .icon-badge { display: none; }
.product-action-count, .product-action-counter > span, .product-detail-counter span { position: absolute; inset: 0; display: grid; place-items: center; color: var(--action); font-size: 0.62rem; font-weight: 900; line-height: 1; transform: translateY(2px); text-shadow: 0 1px 0 rgba(255,255,255,0.72); }
.product-action-button, .product-detail-inventory-button { grid-area: inventory; position: relative; top: auto; right: auto; z-index: auto; width: 42px; height: 42px; min-height: 42px; display: inline-grid; flex: 0 0 42px; place-items: center; margin-left: 0; border: 1px solid rgba(72,83,97,0.12); border-radius: 999px; padding: 0; background: rgba(255,255,255,0.88); color: var(--action); cursor: pointer; box-shadow: 0 7px 18px rgba(61,67,75,0.11), inset 0 1px 0 rgba(255,255,255,0.94); transition: background 140ms ease, border-color 140ms ease, color 140ms ease, transform 140ms ease, box-shadow 140ms ease; }
.product-action-button svg, .product-detail-inventory-button svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 2.35; stroke-linecap: round; stroke-linejoin: round; }
.product-action-button.is-disabled, .product-detail-inventory-button.is-disabled { opacity: 0.48; filter: grayscale(0.1); }
.product-action-button.is-disabled:hover, .product-detail-inventory-button.is-disabled:hover { opacity: 0.72; filter: none; }
.product-action-button:not(.is-disabled):not(.is-done):hover, .product-detail-inventory-button:not(.is-disabled):not(.is-done):hover { border-color: rgba(var(--action-rgb),0.25); background: #fff; transform: translateY(-1px); box-shadow: 0 10px 22px rgba(var(--action-rgb),0.13), inset 0 1px 0 #fff; }
.product-action-button.is-done, .product-detail-inventory-button.is-done { border-color: rgba(210,164,39,0.22); background: rgba(255,211,106,0.34); color: #7c6118; }
.product-action-button.is-done .icon-remove, .product-detail-inventory-button.is-done .icon-remove { display: none; }
@media (hover: hover) and (pointer: fine) {
  .product-action-button.is-done:hover, .product-detail-inventory-button.is-done:hover { background: #d94b5a; color: #fff; filter: none; }
  .product-action-button.is-done:hover .icon-check, .product-detail-inventory-button.is-done:hover .icon-check { display: none; }
  .product-action-button.is-done:hover .icon-remove, .product-detail-inventory-button.is-done:hover .icon-remove { display: block; }
}
.product-action-counter.product-like-button, .product-action-counter.product-compatibility-button { cursor: pointer; }
.product-action-counter.product-like-button[aria-pressed="true"] .icon-main, .product-action-counter.product-compatibility-button[aria-pressed="true"] .icon-main { fill: currentColor; stroke: currentColor; }
.product-action-counter.product-like-button:disabled, .product-action-counter.product-compatibility-button:disabled { opacity: 0.5; cursor: progress; }
.product-action-counter.product-like-display, .product-action-counter.product-compatibility-display { pointer-events: auto; cursor: help; }
.product-community-like-button { grid-area: like; justify-self: start; width: 42px; height: 42px; border: 1px solid rgba(72,83,97,0.12); border-radius: 999px; background: rgba(255,255,255,0.88); color: var(--action); box-shadow: 0 7px 18px rgba(61,67,75,0.11), inset 0 1px 0 rgba(255,255,255,0.94); transition: background 140ms ease, border-color 140ms ease, color 140ms ease, transform 140ms ease, box-shadow 140ms ease; }
.product-community-like-button svg { width: 23px; height: 23px; fill: none; stroke: currentColor; stroke-width: 1.55; }
.product-community-like-button .product-like-count { inset: auto -4px -3px auto; min-width: 18px; height: 18px; padding: 0 4px; border: 2px solid rgba(250,247,239,0.96); border-radius: 999px; background: #fff; color: var(--action); font-size: 0.55rem; transform: none; text-shadow: none; box-shadow: 0 3px 9px rgba(61,67,75,0.13); }
.product-community-like-button[aria-pressed="true"], .product-community-like-button.is-active { border-color: rgba(190,57,94,0.20); background: rgba(255,239,244,0.95); color: #b83d63; }
.product-community-like-button[aria-pressed="true"] .product-like-count, .product-community-like-button.is-active .product-like-count { background: #b83d63; color: #fff; text-shadow: none; }
.product-community-like-button[aria-pressed="true"]:hover { border-color: rgba(190,57,94,0.32); background: #ffe6ee; color: #a93056; }
.product-community-like-button:not([aria-pressed="true"]):hover { border-color: rgba(190,57,94,0.16); background: rgba(255,239,244,0.78); color: #b85f78; transform: translateY(-1px); box-shadow: 0 10px 22px rgba(190,57,94,0.09), inset 0 1px 0 #fff; }
.product-community-bookmark-button {
  grid-area: bookmark;
  justify-self: start;
  width: 38px;
  height: 38px;
  display: inline-grid;
  place-items: center;
  padding: 0;
  border: 1px solid rgba(72,83,97,0.10);
  border-radius: 50%;
  background: rgba(255,255,255,0.90);
  color: var(--action);
  box-shadow: 0 7px 18px rgba(61,67,75,0.10), inset 0 1px 0 rgba(255,255,255,0.94);
  cursor: pointer;
  pointer-events: auto;
  transition: background 140ms ease, border-color 140ms ease, color 140ms ease, transform 140ms ease;
}
.product-community-bookmark-button svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.product-community-bookmark-button[aria-pressed="true"] { border-color: rgba(194,143,21,0.24); background: rgba(255,242,197,0.98); color: #856313; }
.product-community-bookmark-button[aria-pressed="true"] svg { fill: #ffd36a; }
.product-community-bookmark-button:hover,
.product-community-bookmark-button:focus-visible { border-color: rgba(194,143,21,0.28); background: #fff2c5; color: #72550c; transform: translateY(-1px); outline: 0; }
.product-community-bookmark-button:disabled { opacity: 0.55; cursor: wait; transform: none; }
.project-engagement { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.project-engagement-button { min-height: 34px; display: inline-flex; align-items: center; gap: 7px; border: 1px solid rgba(var(--action-rgb),0.18); border-radius: 999px; padding: 0 10px; background: rgba(255,255,255,0.36); color: var(--action); font: inherit; font-size: 0.82rem; font-weight: 840; line-height: 1; text-decoration: none; white-space: nowrap; }
.project-engagement-button svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
button.project-engagement-button { cursor: pointer; }
button.project-engagement-button:disabled { opacity: 0.55; cursor: progress; }
.project-engagement-button[aria-pressed="true"], .project-engagement-button.is-active { background: var(--action); color: #fff; border-color: var(--action); }
.project-engagement-button[aria-pressed="true"] .project-heart-icon { fill: currentColor; stroke: currentColor; }
.project-engagement-button.is-static { cursor: help; color: var(--muted); border-color: rgba(32,32,29,0.10); }
.project-engagement-button.is-success { background: rgba(92,150,104,0.18); color: #376141; border-color: rgba(92,150,104,0.20); }
.project-engagement-button.is-failed { background: rgba(159,93,84,0.16); color: #7a3f38; border-color: rgba(159,93,84,0.18); }
.project-complete-form { display: grid; gap: 12px; min-width: min(92vw, 420px); }
.project-complete-form label { display: grid; gap: 6px; color: var(--muted); font-size: 0.84rem; font-weight: 800; }
.project-complete-form select, .project-complete-form textarea { width: 100%; border: 0; border-radius: 8px; padding: 10px 11px; background: rgba(255,255,255,0.72); color: var(--ink); font: inherit; outline: none; box-shadow: inset 0 0 0 1px rgba(255,255,255,0.44); }
.project-complete-form textarea { min-height: 82px; resize: vertical; }
.project-complete-form .project-complete-checkbox { display: flex; grid-template-columns: none; align-items: center; gap: 8px; color: var(--ink); }
.project-complete-form .project-complete-checkbox input { width: 16px; height: 16px; accent-color: var(--action); }
.project-completion-inventory { display: grid; gap: 7px; padding: 13px 14px; border: 1px solid rgba(var(--action-rgb),0.24); border-radius: 10px; background: rgba(var(--action-rgb),0.10); }
.project-completion-inventory.is-booking { border-color: rgba(174,74,55,0.34); background: rgba(174,74,55,0.12); }
.project-completion-inventory.is-error { border-color: rgba(159,93,84,0.36); background: rgba(159,93,84,0.14); }
.project-completion-inventory > strong { color: var(--ink); font-size: 0.96rem; }
.project-completion-inventory p { margin: 0; color: var(--muted); font-size: 0.82rem; line-height: 1.45; }
.project-completion-inventory ul { display: grid; gap: 5px; margin: 2px 0 0; padding: 0; list-style: none; }
.project-completion-inventory li { display: flex; justify-content: space-between; gap: 12px; padding: 7px 9px; border-radius: 7px; background: rgba(255,255,255,0.58); font-size: 0.82rem; }
.project-completion-inventory li strong { color: #8f3447; white-space: nowrap; }
.project-completion-inventory [data-project-completion-inventory-unlinked] { color: #8f3447; font-weight: 760; }
.project-return-selection { display: grid; gap: 8px; padding: 10px 12px; border-radius: 8px; background: rgba(32,32,29,0.06); }
.project-return-selection[hidden] { display: none; }
.project-return-selection > strong { color: var(--ink); font-size: 0.92rem; }
.project-return-selection p { margin: 0; color: var(--muted); font-size: 0.8rem; line-height: 1.42; }
.project-return-list { display: grid; gap: 6px; }
.project-return-option { padding: 8px 0; }
.project-return-option span { display: grid; gap: 2px; }
.project-return-option small { color: var(--muted); font-size: 0.76rem; }
.project-complete-choice-row { display: flex; gap: 8px; flex-wrap: wrap; }
.project-complete-choice { min-height: 38px; border: 1px solid rgba(var(--action-rgb),0.18); border-radius: 8px; padding: 0 12px; background: transparent; color: var(--action); cursor: pointer; font: inherit; font-weight: 820; }
.project-complete-choice.is-active { background: var(--action); color: #fff; border-color: var(--action); }
html[data-design="blue"] .project-engagement-button { background: rgba(237,247,255,0.08); color: #edf7ff; border-color: rgba(76,161,255,0.22); }
html[data-design="blue"] .project-engagement-button[aria-pressed="true"], html[data-design="blue"] .project-engagement-button.is-active { background: var(--action); color: #fff; border-color: rgba(76,161,255,0.52); }
html[data-design="blue"] .project-engagement-button.is-static { color: #98b5d7; }
html[data-design="blue"] .project-engagement-button.is-success { background: rgba(92,150,104,0.22); color: #dbffe3; border-color: rgba(92,150,104,0.30); }
html[data-design="blue"] .project-engagement-button.is-failed { background: rgba(159,93,84,0.24); color: #ffd3cc; border-color: rgba(159,93,84,0.34); }
html[data-design="blue"] .project-complete-form select, html[data-design="blue"] .project-complete-form textarea { background: rgba(3,13,25,0.72); color: #edf7ff; box-shadow: inset 0 0 0 1px rgba(76,161,255,0.18); }
html[data-design="blue"] .project-completion-inventory { background: rgba(76,161,255,0.10); border-color: rgba(76,161,255,0.24); }
html[data-design="blue"] .project-completion-inventory.is-booking { background: rgba(159,93,84,0.22); border-color: rgba(255,139,120,0.34); }
html[data-design="blue"] .project-completion-inventory > strong { color: #edf7ff; }
html[data-design="blue"] .project-completion-inventory p { color: #b8cee8; }
html[data-design="blue"] .project-completion-inventory li { background: rgba(3,13,25,0.56); }
html[data-design="blue"] .project-completion-inventory li strong,
html[data-design="blue"] .project-completion-inventory [data-project-completion-inventory-unlinked] { color: #ffb2a6; }
html[data-design="blue"] .project-return-selection { background: rgba(237,247,255,0.08); border: 1px solid rgba(76,161,255,0.16); }
html[data-design="blue"] .project-return-selection > strong { color: #edf7ff; }
html[data-design="blue"] .project-return-selection p, html[data-design="blue"] .project-return-option small { color: #98b5d7; }
.product-feedback-panel { display: grid; gap: 12px; }
.product-feedback-panel h2 { margin: 0; font-size: 1.05rem; }
.product-feedback-form { display: grid; gap: 10px; }
.product-feedback-form textarea { width: 100%; min-height: 112px; resize: vertical; border: 0; border-radius: 8px; padding: 12px 13px; background: rgba(255,255,255,0.45); color: var(--ink); font: inherit; line-height: 1.45; outline: none; box-shadow: inset 0 0 0 1px rgba(255,255,255,0.42); }
.product-feedback-form textarea:focus { box-shadow: inset 0 0 0 2px rgba(var(--action-rgb),0.32); }
.product-feedback-form .submit-button { justify-self: start; }
.product-feedback-message { min-height: 1.2em; margin: 0; color: var(--muted); font-size: 0.86rem; font-weight: 760; }
.community-teaser, .community-panel, .community-founder-wide, .dashboard-command, .dashboard-status, .dashboard-question, .dashboard-action-card, .dashboard-feed { border: 1px solid var(--glass-border); border-radius: 8px; background: var(--glass); box-shadow: var(--glass-shadow); backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.page-block[data-page-block="dashboard_intro"] .page-intro { max-width: 780px; margin-bottom: 4px; }
.page-block[data-page-block="dashboard_intro"] .page-intro h1 { font-size: clamp(1.05rem, 2.7vw, 2.3rem); line-height: 0.98; }
.page-block[data-page-block="dashboard_intro"] .page-intro p { max-width: 620px; margin-left: auto; margin-right: auto; }
.dashboard-command { overflow: hidden; padding: 0; }
.dashboard-command-head { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(420px, 1.2fr); gap: 18px; align-items: stretch; padding: 20px; }
.dashboard-command-head h2 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: clamp(1.45rem, 2.5vw, 2.15rem); line-height: 1.05; }
.dashboard-command-head p, .dashboard-command-task p { margin: 8px 0 0; color: var(--muted); line-height: 1.42; }
.dashboard-command-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; }
.dashboard-command-metrics article { min-width: 0; padding: 12px; border-radius: 8px; background: rgba(255,255,255,0.52); box-shadow: inset 0 1px 0 rgba(255,255,255,0.64); }
.dashboard-command-metrics span, .dashboard-command-metrics small, .dashboard-command-task span, .dashboard-action-card span, .dashboard-feed span { display: block; color: var(--muted); font-size: 0.72rem; font-weight: 840; }
.dashboard-command-metrics strong { display: block; margin-top: 7px; font-family: "Manrope", system-ui, sans-serif; font-size: clamp(1.2rem, 2.3vw, 1.85rem); line-height: 1; }
.dashboard-command-metrics small { margin-top: 6px; overflow-wrap: anywhere; }
.dashboard-command-task { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 16px; align-items: center; padding: 18px 20px; border-top: 1px solid var(--glass-line); background: linear-gradient(120deg, rgba(255,255,255,0.42), rgba(var(--action-rgb),0.08)); }
.dashboard-command-task span { color: var(--brand-magenta); text-transform: uppercase; letter-spacing: 0.06em; }
.dashboard-command-task strong { display: block; margin-top: 5px; font-family: "Manrope", system-ui, sans-serif; font-size: clamp(1.18rem, 2.6vw, 1.85rem); line-height: 1.1; }
.dashboard-status { display: grid; grid-template-columns: minmax(0, 0.95fr) minmax(420px, 1.05fr); gap: 18px; align-items: stretch; padding: 22px; }
.dashboard-status h2, .dashboard-question h2 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: clamp(1.55rem, 3vw, 2.35rem); line-height: 1.08; }
.dashboard-status p, .dashboard-question p, .dashboard-action-card small, .dashboard-feed p { margin: 10px 0 0; color: var(--muted); line-height: 1.45; }
.dashboard-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.dashboard-metrics article { min-width: 0; padding: 14px; border-radius: 8px; background: var(--glass-child); box-shadow: var(--child-shadow); }
.dashboard-metrics span, .dashboard-metrics small, .dashboard-action-card span, .dashboard-feed span { display: block; color: var(--muted); font-size: 0.78rem; font-weight: 820; }
.dashboard-metrics strong { display: block; margin-top: 8px; font-family: "Manrope", system-ui, sans-serif; font-size: clamp(1.35rem, 2.6vw, 2rem); line-height: 1; }
.dashboard-metrics small { margin-top: 7px; overflow-wrap: anywhere; }
.dashboard-question { display: grid; grid-template-columns: minmax(0, 0.72fr) minmax(340px, 1.28fr); gap: 18px; align-items: center; padding: 22px; border-color: rgba(var(--action-rgb),0.22); }
.dashboard-question-card { min-width: 0; padding: 16px; border-radius: 8px; background: linear-gradient(145deg, rgba(var(--action-rgb),0.10), rgba(254,212,121,0.18)); box-shadow: var(--child-shadow); }
.dashboard-question-card strong { display: block; font-family: "Manrope", system-ui, sans-serif; font-size: clamp(1.12rem, 2vw, 1.45rem); line-height: 1.16; }
.dashboard-question-actions { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 14px; justify-content: flex-end; }
.dashboard-question-actions button { min-height: 38px; border: 0; border-radius: 999px; padding: 0 15px; background: rgba(255,255,255,0.66); color: var(--ink); cursor: pointer; font: inherit; font-size: 0.86rem; font-weight: 820; box-shadow: inset 0 1px 0 rgba(255,255,255,0.7); }
.dashboard-question-actions button:first-child { background: var(--action); color: #fff; box-shadow: 0 10px 28px rgba(var(--action-rgb),0.16), inset 0 1px 0 rgba(255,255,255,0.24); }
.dashboard-actions, .dashboard-feed { display: grid; gap: 16px; }
.dashboard-action-grid, .dashboard-feed-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.dashboard-action-card { min-width: 0; display: grid; gap: 6px; padding: 16px; color: var(--ink); text-decoration: none; transition: transform 140ms ease, box-shadow 140ms ease; }
.dashboard-action-card:hover { transform: translateY(-2px); box-shadow: 0 18px 48px rgba(75,70,58,0.12), inset 0 1px 0 rgba(255,255,255,0.72); }
.dashboard-action-card span, .dashboard-feed span { color: var(--brand-magenta); text-transform: uppercase; letter-spacing: 0.06em; }
.dashboard-action-card strong, .dashboard-feed strong { display: block; font-family: "Manrope", system-ui, sans-serif; font-size: 1.08rem; line-height: 1.15; }
.dashboard-feed { padding: 22px; }
.dashboard-feed-list article { min-width: 0; padding: 14px; border-radius: 8px; background: var(--glass-child); box-shadow: var(--child-shadow); }
.community-teaser { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(240px, 0.55fr); gap: 18px; align-items: stretch; padding: 24px; }
.community-teaser-main, .community-page, .community-panel, .community-founder-wide { min-width: 0; }
.community-eyebrow { margin: 0 0 8px; color: var(--brand-magenta); font-size: 0.82rem; font-weight: 860; letter-spacing: 0.08em; text-transform: uppercase; }
.community-teaser h1, .community-hero h1 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: clamp(0.9rem, 2vw, 1.625rem); line-height: 1.04; }
.community-teaser p, .community-hero p, .community-section-head p, .community-founder-wide p, .community-step p { margin: 10px 0 0; color: var(--muted); line-height: 1.55; }
.community-mini-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin-top: 18px; }
.community-mini-point { display: grid; grid-template-columns: 34px minmax(0, 1fr); gap: 10px; align-items: start; min-width: 0; padding: 12px; border-radius: 8px; background: var(--glass-child); box-shadow: var(--child-shadow); }
.community-mini-point strong, .community-mini-point span { display: block; min-width: 0; }
.community-mini-point strong { color: var(--ink); font-weight: 860; }
.community-mini-point span { color: var(--muted); font-size: 0.86rem; line-height: 1.35; }
.community-icon { width: 30px; height: 30px; display: inline-grid; place-items: center; border-radius: 999px; background: rgba(var(--action-rgb),0.12); color: var(--action); }
.community-icon::before { font-weight: 900; }
.community-icon-check::before { content: "✓"; }
.community-icon-share::before { content: "↗"; }
.community-icon-spark::before { content: "+"; }
.community-founder-card { display: grid; align-content: center; gap: 14px; padding: 18px; border-radius: 8px; background: linear-gradient(145deg, rgba(var(--action-rgb),0.16), rgba(254,212,121,0.20)); border: 1px solid rgba(255,255,255,0.46); box-shadow: var(--child-shadow); }
.community-founder-card strong, .community-founder-wide h2 { font-family: "Manrope", system-ui, sans-serif; font-size: clamp(1.35rem, 2.3vw, 2rem); line-height: 1.08; }
.community-founder-card span, .community-founder-action strong { color: var(--brand-magenta); font-weight: 860; }
.community-page { display: grid; gap: 18px; }
.community-hero { display: grid; justify-items: start; gap: 8px; padding: 14px 0 4px; }
.community-hero p { max-width: 760px; font-size: 1.05rem; }
.community-kicker { margin: 0 0 6px; color: var(--brand-magenta); font-size: 0.76rem; font-weight: 880; letter-spacing: 0.08em; text-transform: uppercase; }
.community-account-strip { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-top: 10px; }
.community-account-strip span, .community-account-strip a { min-height: 38px; display: inline-flex; align-items: center; gap: 6px; padding: 0 13px; border-radius: 999px; background: var(--glass-child); color: var(--muted); text-decoration: none; box-shadow: var(--child-shadow); }
.community-account-strip strong { color: var(--ink); font-family: "Manrope", system-ui, sans-serif; }
.community-account-strip a { background: rgba(var(--action-rgb),0.12); color: var(--action); font-weight: 840; }
.community-account-strip a:hover, .community-account-strip a:focus-visible { background: rgba(var(--action-rgb),0.18); }
.community-panel { display: grid; gap: 16px; padding: 22px; }
.community-section-head h2, .community-founder-wide h2 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: clamp(1.35rem, 3vw, 2.25rem); line-height: 1.08; }
.community-section-head > p:last-child { max-width: 820px; }
.community-action-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; }
.community-action-card { min-width: 0; display: grid; grid-template-rows: auto 1fr auto auto; gap: 14px; padding: 16px; border-radius: 8px; background: var(--glass-child); box-shadow: var(--child-shadow); }
.community-action-index { width: 32px; height: 32px; display: inline-grid; place-items: center; border-radius: 999px; background: var(--action); color: #fff; font-family: "Manrope", system-ui, sans-serif; font-weight: 880; }
.community-action-card h3, .community-balance-card h2, .community-fact-card h3 { margin: 0; font-family: "Manrope", system-ui, sans-serif; line-height: 1.18; }
.community-action-card h3 { font-size: 1.08rem; }
.community-action-card p, .community-balance-card p, .community-fact-card p, .community-free-strip p, .community-panel-note, .community-rules li { margin: 7px 0 0; color: var(--muted); line-height: 1.48; }
.community-action-card dl { display: grid; gap: 7px; margin: 0; }
.community-action-card dl div { display: flex; justify-content: space-between; gap: 12px; padding-top: 7px; border-top: 1px solid var(--glass-line); }
.community-action-card dt { color: var(--muted); font-size: 0.76rem; font-weight: 800; }
.community-action-card dd { margin: 0; color: var(--ink); font-size: 0.8rem; font-weight: 880; text-align: right; }
.community-action-link, .community-faq-link { min-height: 40px; display: inline-flex; align-items: center; justify-content: center; padding: 0 15px; border-radius: 999px; background: rgba(var(--action-rgb),0.12); color: var(--action); font-weight: 850; text-decoration: none; }
.community-action-link:hover, .community-action-link:focus-visible, .community-faq-link:hover, .community-faq-link:focus-visible { background: var(--action); color: #fff; }
.community-balance-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.community-balance-card { min-width: 0; padding: 22px; border: 1px solid var(--glass-border); border-radius: 8px; background: var(--glass); box-shadow: var(--glass-shadow); }
.community-balance-card.is-points { background: linear-gradient(145deg, var(--glass), rgba(231,76,107,0.08)); }
.community-balance-card.is-credits { background: linear-gradient(145deg, var(--glass), rgba(var(--action-rgb),0.10)); }
.community-balance-card h2 { font-size: clamp(1.35rem, 2.4vw, 1.9rem); }
.community-balance-card > strong { display: block; margin-top: 14px; color: var(--ink); }
.community-fact-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.community-fact-card { min-width: 0; display: grid; align-content: start; gap: 8px; padding: 15px; border-radius: 8px; background: var(--glass-child); box-shadow: var(--child-shadow); }
.community-fact-card h3 { font-size: 1rem; }
.community-fact-card > strong { align-self: end; color: var(--brand-magenta); }
.community-free-strip { padding: 14px 16px; border-radius: 8px; background: rgba(var(--action-rgb),0.09); }
.community-free-strip p { margin-top: 4px; }
.community-panel-note { margin: 0; font-size: 0.88rem; }
.community-rules ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px 20px; margin: 0; padding: 0; list-style: none; }
.community-rules li { position: relative; margin: 0; padding-left: 20px; }
.community-rules li::before { content: "✓"; position: absolute; left: 0; color: var(--action); font-weight: 900; }
.community-faq-link { justify-self: start; }
.community-step-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.community-step { min-width: 0; padding: 14px; border-radius: 8px; background: var(--glass-child); box-shadow: var(--child-shadow); }
.community-step span { width: 30px; min-height: 30px; display: inline-grid; place-items: center; margin-bottom: 10px; border-radius: 999px; background: var(--action); color: #fff; font-weight: 860; }
.community-step strong { display: block; font-weight: 860; }
.community-reward-table { display: grid; overflow: hidden; border: 1px solid var(--glass-line); border-radius: 8px; }
.community-reward-row { display: grid; grid-template-columns: 1.2fr 0.62fr 1.45fr; gap: 10px; align-items: center; padding: 12px 14px; border-bottom: 1px solid var(--glass-line); }
.community-reward-row:last-child { border-bottom: 0; }
.community-reward-head { background: var(--glass-child); color: var(--muted); font-size: 0.78rem; font-weight: 860; text-transform: uppercase; }
.community-reward-row strong { color: var(--brand-magenta); }
.community-levels { display: flex; align-items: stretch; gap: 10px; flex-wrap: wrap; }
.community-level { flex: 1 1 150px; min-width: 0; padding: 14px; border-radius: 8px; background: var(--glass-child); box-shadow: var(--child-shadow); }
.community-level strong, .community-level span { display: block; }
.community-level strong { color: var(--action); font-family: "Manrope", system-ui, sans-serif; font-size: 1.05rem; }
.community-level span { margin-top: 5px; color: var(--muted); font-size: 0.86rem; line-height: 1.35; }
.community-founder-wide { display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(220px, 0.65fr); gap: 18px; align-items: center; padding: 24px; background: linear-gradient(145deg, var(--glass), rgba(254,212,121,0.18)); }
.community-founder-action { display: grid; justify-items: stretch; gap: 14px; }
.community-verification { border-color: rgba(var(--action-rgb),0.24); }
.community-review-queue { display: grid; gap: 10px; }
.community-review-card, .community-review-empty { display: grid; gap: 12px; padding: 16px; border: 1px solid var(--glass-line); border-radius: 8px; background: var(--glass-child); box-shadow: var(--child-shadow); }
.community-review-main { display: grid; grid-template-columns: 96px minmax(0, 1fr); gap: 12px; align-items: center; }
.community-review-image { width: 96px; aspect-ratio: 1; display: grid; place-items: center; margin: 0; border-radius: 8px; overflow: hidden; background: rgba(255,255,255,0.52); border: 1px solid var(--glass-line); }
.community-review-image img { width: 100%; height: 100%; object-fit: contain; object-position: center; }
.community-review-product { display: grid; gap: 4px; min-width: 0; }
.community-review-product span, .community-review-meta, .community-review-feedback, .community-review-count { color: var(--muted); font-size: 0.86rem; line-height: 1.35; }
.community-review-product strong { min-width: 0; color: var(--ink); font-size: 1.04rem; font-weight: 860; overflow-wrap: anywhere; }
.community-review-product p, .community-review-problem, .community-review-empty p { margin: 0; color: var(--muted); line-height: 1.4; }
.community-review-problem { padding: 10px 12px; border-radius: 8px; background: rgba(var(--action-rgb),0.1); color: var(--ink); }
.community-review-card h3 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: 1.2rem; line-height: 1.2; }
.community-review-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.community-review-actions button { min-height: 40px; padding: 0 16px; border: 0; border-radius: 999px; background: var(--action); color: #fff; font: inherit; font-weight: 860; cursor: pointer; }
.community-review-actions button:nth-child(2) { background: rgba(231,76,107,0.9); }
.community-review-actions button:nth-child(3) { background: rgba(92,105,117,0.86); }
.community-review-actions button:hover, .community-review-actions button:focus-visible { filter: brightness(1.05); transform: translateY(-1px); }
.community-review-feedback, .community-review-count { margin: 0; }
.community-review-feedback strong { color: var(--brand-magenta); }
@media (max-width: 520px) { .community-review-main { grid-template-columns: 72px minmax(0, 1fr); } .community-review-image { width: 72px; } }

.landing-auth { width: min(520px, 100%); margin: 28px auto 0; }

.submit-button { min-height: 44px; padding: 0 18px; border: 0; border-radius: 50px; background: var(--action); color: #fff; font: inherit; font-weight: 740; cursor: pointer; box-shadow: 0 10px 28px rgba(var(--action-rgb),0.18), inset 0 1px 0 rgba(255,255,255,0.28); }

.landing-auth-status { display: flex; align-items: center; gap: 10px; padding: 6px 6px 6px 20px; justify-content: space-between; }
.landing-auth-status-text { flex: 1; min-width: 0; color: var(--ink); font-size: 1rem; font-weight: 760; }
.landing-auth-status-icon { width: 44px; min-width: 44px; height: 44px; display: inline-grid; place-items: center; border-radius: 999px; background: var(--action); color: #fff; }
.landing-auth-status-icon svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }

.message { margin: 0; color: rgba(32,32,29,0.62); font-size: 0.94rem; }

.link-button { min-height: 42px; border: 0; background: transparent; color: #a0184c; font: inherit; font-weight: 700; cursor: pointer; }
.catalog-link-description { margin: 0 0 6px; color: var(--muted); font-size: 0.8rem; font-weight: 400; line-height: 1.45; }
.catalog-link-fact .catalog-unlink-button { color: var(--muted); }
.catalog-link-fact .catalog-unlink-button:hover { color: var(--ink); }
.catalog-unlink-form { display: flex; align-items: center; flex-wrap: wrap; gap: 4px 12px; margin: 0; }
.link-button.catalog-unlink-button { padding: 0; font-size: 0.8rem; font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.list-section { display: grid; gap: 16px; }
.section-head { display: flex; align-items: end; justify-content: space-between; gap: 18px; }
.section-head h1 { margin: 0; font-size: 0.85rem; font-weight: 760; }
.category-filter { position: relative; z-index: 8; min-height: 42px; margin: -4px 0 18px; overflow: visible; }
.category-filter-inner { display: flex; align-items: center; gap: 8px; min-height: 38px; max-height: 38px; overflow: hidden; padding-bottom: 2px; white-space: nowrap; }
.category-filter-level { display: inline-flex; gap: 8px; align-items: center; flex-wrap: nowrap; min-width: 0; }
.category-next-start { display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; }
.category-separator { color: var(--muted); font-size: 1.2rem; font-weight: 860; line-height: 1; opacity: 0.72; }
.category-chip, .category-reset, .category-token, .category-more { flex: 0 0 auto; min-height: 34px; border: 0; border-radius: 8px; padding: 0 12px; background: rgba(255,255,255,0.28); color: var(--muted); cursor: pointer; font: inherit; font-size: 0.86rem; font-weight: 760; white-space: nowrap; transition: background 120ms ease, color 120ms ease; }
.category-chip { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 7px; min-width: max-content; max-width: none; text-decoration: none; }
.category-chip span { overflow: visible; text-overflow: clip; }
.category-chip:hover, .category-reset:hover, .category-chip.is-active, .category-reset.is-active, .category-more:hover, .category-more[aria-expanded="true"] { background: var(--action); color: #fff; }
.category-reset { background: transparent; color: var(--muted); }
.category-token { display: inline-flex; align-items: center; gap: 8px; max-width: 230px; background: var(--action); color: #fff; }
.category-token span { overflow: hidden; text-overflow: ellipsis; }
.category-token strong { font-size: 1rem; line-height: 1; }
.category-more-wrap { display: inline-flex; flex: 0 0 auto; min-width: max-content; }
.category-more { display: inline-flex; flex: 0 0 auto; align-items: center; min-width: max-content; background: transparent; color: var(--muted); white-space: nowrap; }
.category-popover { position: absolute; top: calc(100% + 6px); right: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 8px; width: min(560px, calc(100vw - 32px)); max-height: 320px; overflow-y: auto; padding: 10px; border: 1px solid var(--glass-border); border-radius: 8px; background: rgba(255,255,255,0.94); box-shadow: 0 18px 42px rgba(24,35,53,0.18); backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.category-popover .category-chip { justify-content: space-between; width: 100%; }
.category-filter-label { flex: 0 0 auto; color: var(--muted); font-size: 0.82rem; font-weight: 760; }
.item-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
[data-view="products"] { display: grid; }
.gallery-head { position: relative; z-index: 7; display: flex; align-items: center; justify-content: flex-start; gap: 18px; margin-bottom: 16px; order: 10; }
.gallery-head h1 { margin: 0; font-size: 0.85rem; font-weight: 760; }
.gallery-search { position: relative; flex: 0 0 calc((100% - 48px) / 4); width: calc((100% - 48px) / 4); min-width: 0; max-width: calc((100% - 48px) / 4); display: grid; gap: 6px; }
.gallery-search .search-bar { height: 42px; padding-right: 44px; background: rgba(255,255,255,0.34); }
.gallery-search .search-bar::-webkit-search-cancel-button { display: none; }
.gallery-search-clear { position: absolute; top: 50%; right: 10px; width: 26px; height: 26px; transform: translateY(-50%); border: 0; border-radius: 999px; background: rgba(var(--action-rgb),0.15); color: var(--action); cursor: pointer; font: inherit; font-size: 1rem; font-weight: 900; line-height: 1; display: inline-flex; align-items: center; justify-content: center; }
.gallery-search-clear:hover { background: var(--action); color: #fff; }
.gallery-search-clear[hidden] { display: none; }
.product-view-switcher { min-height: 42px; display: inline-flex; flex: 0 0 auto; align-items: center; gap: 7px; padding: 3px 8px; border-radius: 999px; background: rgba(255,255,255,0.42); box-shadow: inset 0 1px 0 rgba(255,255,255,0.68), 0 12px 28px rgba(70,66,56,0.08); overflow: hidden; }
.product-view-step { width: 25px; min-height: 32px; display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: 999px; background: transparent; color: rgba(var(--action-rgb),0.72); cursor: pointer; font: inherit; font-size: 1.45rem; font-weight: 900; line-height: 1; }
.product-view-step:hover { color: var(--action); background: rgba(var(--action-rgb),0.10); }
.product-view-current { width: 74px; height: 34px; display: grid; place-items: center; border-radius: 12px; background: transparent; color: var(--action); overflow: hidden; pointer-events: none; box-shadow: none; }
.product-view-glyph-svg { display: block; width: 74px; height: 34px; color: inherit; }
.product-view-glyph-line, .product-view-glyph-card, .product-view-glyph-dot { fill: currentColor; }
.product-view-current.is-step-forward .product-view-glyph-svg { animation: productViewGlyphForward 170ms ease both; }
.product-view-current.is-step-back .product-view-glyph-svg { animation: productViewGlyphBack 170ms ease both; }
.product-view-modes[hidden] { display: none; }
@keyframes productViewGlyphForward { 0% { opacity: 0; transform: translateX(14px); } 100% { opacity: 1; transform: translateX(0); } }
@keyframes productViewGlyphBack { 0% { opacity: 0; transform: translateX(-14px); } 100% { opacity: 1; transform: translateX(0); } }
.product-spec-filter { position: relative; flex: 0 0 auto; align-self: center; }
.product-filter-tools { display: inline-flex; flex: 0 0 auto; align-items: center; gap: 8px; }
.product-3d-token, .product-score-token, .product-region-price-token { width: 36px; height: 36px; display: inline-flex; flex: 0 0 36px; align-items: center; justify-content: center; border: 1px solid rgba(var(--action-rgb),0.24); border-radius: 7px; padding: 0; background: rgba(255,255,255,0.72); color: var(--action); box-shadow: inset 0 1px 0 rgba(255,255,255,0.82), 0 5px 14px rgba(56,68,82,0.07); }
.product-3d-cube { display: block; width: 22px; height: 22px; overflow: visible; }
.product-3d-cube-face { fill: currentColor; stroke: none; }
.product-3d-cube-face-top { opacity: 0.12; }
.product-3d-cube-face-left { opacity: 0.06; }
.product-3d-cube-face-right { opacity: 0.22; }
.product-3d-cube-line { fill: none; stroke: currentColor; stroke-width: 1.35; stroke-linecap: round; stroke-linejoin: round; }
.product-3d-filter-toggle, .product-score-sort-toggle, .product-region-price-filter-toggle { min-width: 36px; min-height: 36px; background: rgba(255,255,255,0.46); cursor: pointer; font-family: inherit; }
.product-3d-filter-toggle:hover, .product-3d-filter-toggle:focus-visible, .product-3d-filter-toggle.is-active, .product-score-sort-toggle:hover, .product-score-sort-toggle:focus-visible, .product-score-sort-toggle.is-active, .product-region-price-filter-toggle:hover, .product-region-price-filter-toggle:focus-visible, .product-region-price-filter-toggle.is-active { border-color: var(--action); background: var(--action); color: #fff; outline: 0; }
.product-3d-filter-toggle:focus-visible, .product-score-sort-toggle:focus-visible, .product-region-price-filter-toggle:focus-visible { box-shadow: 0 0 0 3px rgba(var(--action-rgb),0.18); }
.product-score-icon, .product-region-price-icon { display: block; width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.35; stroke-linecap: round; stroke-linejoin: round; }
.product-score-star, .product-region-price-tag { fill: currentColor; fill-opacity: 0.12; }
.product-region-price-hole { fill: currentColor; stroke: none; }
.product-spec-filter[hidden] { display: none; }
.product-spec-filter-control { min-height: 34px; display: inline-flex; align-items: center; border-radius: 999px; background: rgba(255,255,255,0.46); color: var(--action); box-shadow: inset 0 1px 0 rgba(255,255,255,0.64); }
.product-spec-filter-control:hover, .product-spec-filter-control.is-active, .product-spec-filter.is-open .product-spec-filter-control { background: var(--action); color: #fff; }
.product-spec-filter-toggle { min-height: 34px; border: 0; border-radius: 999px; padding: 0 7px 0 13px; background: transparent; color: inherit; cursor: pointer; font: inherit; font-size: 0.82rem; font-weight: 850; }
.product-spec-filter-toggle:hover, .product-spec-filter-toggle.is-active, .product-spec-filter.is-open .product-spec-filter-toggle { color: inherit; }
.product-spec-filter-toggle span { min-width: 20px; min-height: 20px; display: inline-flex; align-items: center; justify-content: center; margin-left: 7px; border-radius: 999px; background: rgba(255,255,255,0.72); color: var(--action); font-size: 0.72rem; font-weight: 900; }
.product-spec-filter-reset { width: 20px; height: 20px; margin: 0 7px 0 0; border: 0; border-radius: 999px; background: rgba(210,40,58,0.68); color: #fff; cursor: pointer; font: inherit; font-size: 0.88rem; font-weight: 900; line-height: 1; display: inline-flex; align-items: center; justify-content: center; }
.product-spec-filter-reset:hover { background: rgba(210,40,58,1); }
.product-spec-filter-reset[hidden] { display: none; }
.product-spec-filter-menu { position: absolute; z-index: 80; top: calc(100% + 9px); left: 0; width: min(720px, calc(100vw - 32px)); max-height: min(440px, calc(100vh - 190px)); overflow: auto; padding: 14px; border: 1px solid var(--glass-border); border-radius: 8px; background: rgba(255,255,255,0.94); box-shadow: 0 18px 42px rgba(24,35,53,0.18); backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.product-spec-filter-menu[hidden] { display: none; }
.product-spec-filter-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.product-spec-filter-field { display: grid; gap: 6px; color: var(--muted); font-size: 0.76rem; font-weight: 820; }
.product-spec-filter-field select, .product-manufacturer-search { width: 100%; min-height: 36px; border: 0; border-radius: 8px; padding: 0 30px 0 10px; background: rgba(250,246,237,0.78); color: var(--ink); font: inherit; font-size: 0.82rem; font-weight: 780; box-shadow: inset 0 1px 0 rgba(255,255,255,0.64); }
.product-manufacturer-filter-field { grid-column: 1 / -1; }
.product-spec-filter-note { color: var(--muted); font-size: 0.72rem; font-weight: 720; line-height: 1.3; }
.product-manufacturer-options { display: flex; flex-wrap: wrap; gap: 6px; max-height: 184px; overflow: auto; padding-right: 2px; }
.product-manufacturer-option { min-height: 29px; display: inline-flex; align-items: center; gap: 6px; border: 0; border-radius: 999px; padding: 0 9px; background: rgba(250,246,237,0.76); color: var(--muted); cursor: pointer; font: inherit; font-size: 0.76rem; font-weight: 820; }
.product-manufacturer-option b { color: inherit; font-size: 0.68rem; opacity: 0.78; }
.product-manufacturer-option:hover, .product-manufacturer-option.is-active { background: var(--action); color: #fff; }
.product-spec-filter-actions { display: flex; justify-content: flex-end; margin-top: 12px; }
.product-spec-filter-actions button { min-height: 32px; border: 0; border-radius: 999px; padding: 0 12px; background: rgba(151,164,181,0.18); color: var(--muted); cursor: pointer; font: inherit; font-size: 0.78rem; font-weight: 830; }
.product-spec-filter-empty { margin: 0; color: var(--muted); font-size: 0.84rem; font-weight: 760; }
.gallery-actions { display: inline-flex; align-items: center; gap: 10px; flex-wrap: wrap; margin-left: auto; }
.product-scope-control { position: relative; display: grid; grid-template-columns: repeat(4, minmax(72px, 1fr)); align-items: center; width: clamp(330px, 36vw, 462px); min-height: 34px; padding: 3px; border-radius: 999px; background: rgba(254,212,121,0.62); box-shadow: inset 0 1px 2px rgba(126,94,22,0.10), inset 0 0 0 1px rgba(192,143,30,0.14), 0 8px 22px rgba(126,94,22,0.08); }
.product-scope-thumb { position: absolute; z-index: 1; top: 3px; left: 3px; width: calc((100% - 6px) / 4); height: calc(100% - 6px); border-radius: 999px; background: var(--action); box-shadow: 0 6px 17px rgba(var(--action-rgb),0.28), inset 0 1px 0 rgba(255,255,255,0.28); transform: translateX(0); transition: transform 150ms ease; }
.product-scope-control[data-scope="projects"] .product-scope-thumb { transform: translateX(100%); }
.product-scope-control[data-scope="check"] .product-scope-thumb { transform: translateX(200%); }
.product-scope-control[data-scope="all"] .product-scope-thumb { transform: translateX(300%); }
a.product-scope-option { display: flex; align-items: center; justify-content: center; text-align: center; text-decoration: none; }
.projects-head .product-scope-control { max-width: 100%; flex-shrink: 0; }
.product-scope-option { position: relative; z-index: 2; min-height: 28px; border: 0; border-radius: 999px; background: transparent; color: rgba(76,61,27,0.72); cursor: pointer; font-size: 0.6rem; font-weight: 850; letter-spacing: 0; line-height: 1; transition: color 120ms ease; }
.product-scope-option:hover:not(.is-active) { color: var(--ink); }
.product-scope-option.is-active { color: #fff; text-shadow: 0 1px 0 rgba(21,50,82,0.16); }
.product-sort-tools { display: inline-flex; align-items: center; gap: 4px; }
.product-sort-tools[hidden] { display: none; }
.product-pagination-bar { display: grid; gap: 12px; justify-items: center; margin-top: 18px; order: 60; }
.product-pagination-bar[hidden] { display: none; }
.product-page-size-label { display: inline-flex; align-items: center; gap: 9px; color: var(--muted); font-size: 0.82rem; font-weight: 820; }
.product-page-size-select { min-height: 34px; border: 0; border-radius: 999px; padding: 0 34px 0 13px; background: rgba(255,255,255,0.56); color: var(--ink); cursor: pointer; font: inherit; font-size: 0.86rem; font-weight: 820; box-shadow: inset 0 1px 0 rgba(255,255,255,0.64); }
.product-pagination { display: flex; align-items: center; justify-content: center; gap: 6px; flex-wrap: wrap; }
.product-page-button { min-width: 34px; min-height: 34px; display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: 999px; padding: 0 10px; background: rgba(255,255,255,0.48); color: var(--muted); cursor: pointer; font: inherit; font-size: 0.86rem; font-weight: 820; text-decoration: none; box-shadow: inset 0 1px 0 rgba(255,255,255,0.64); }
.product-page-button:hover, .product-page-button.is-active { background: var(--action); color: #fff; }
.product-sort-button { width: 34px; min-height: 34px; display: inline-flex; align-items: center; justify-content: center; border: 0; background: transparent; color: var(--action); cursor: pointer; opacity: 0.58; transition: opacity 120ms ease, color 120ms ease; }
.product-sort-button svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.product-sort-button span { color: currentColor; font-size: 0.72rem; font-weight: 860; letter-spacing: 0; }
.product-sort-button:hover, .product-sort-button.is-active { opacity: 1; }
.product-sort-button.is-active svg { stroke-width: 2; }
.product-sort-button[data-filter-products="liked"].is-active { border-radius: 999px; background: rgba(255,239,244,0.95); color: #b83d63; box-shadow: 0 6px 16px rgba(184,61,99,0.13), inset 0 1px 0 rgba(255,255,255,0.92); }
.product-sort-button[data-filter-products="liked"].is-active svg { fill: currentColor; stroke-width: 1.7; }
.compatibility-check-panel { display: grid; gap: 12px; margin: 0 0 16px; order: 20; }
.compatibility-check-panel[hidden] { display: none; }
.compatibility-check-panel:not([hidden]) { display: contents; }
.compatibility-check-toolbar { display: inline-flex; align-items: center; gap: 10px; flex-wrap: wrap; min-height: 42px; padding: 5px 6px; border-radius: 999px; background: rgba(255,255,255,0.46); box-shadow: inset 0 1px 0 rgba(255,255,255,0.64); justify-self: start; order: 20; margin: 0 0 12px; }
.compatibility-check-run { position: relative; min-height: 32px; display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: 999px; padding: 0 18px; background: var(--action); color: #fff; cursor: pointer; font: inherit; font-size: 0.82rem; font-weight: 860; overflow: visible; }
.compatibility-check-run.is-secondary { background: var(--action); color: #fff; box-shadow: 0 8px 22px rgba(var(--action-rgb),0.18), inset 0 1px 0 rgba(255,255,255,0.34); }
.compatibility-check-run:disabled { background: rgba(151,164,181,0.34); color: var(--muted); cursor: default; }
.compatibility-check-run.is-running, .compatibility-check-run.is-running:disabled { background: var(--action); color: #fff; cursor: progress; opacity: 1; box-shadow: 0 8px 22px rgba(var(--action-rgb),0.24), inset 0 1px 0 rgba(255,255,255,0.46); }
.compatibility-check-run.is-running::after { content: ""; position: absolute; left: 18px; right: 18px; bottom: -8px; height: 4px; border-radius: 999px; background: linear-gradient(90deg, rgba(255,211,106,0.22), #ffd36a 34%, #fff8d8 50%, #ffd36a 66%, rgba(255,211,106,0.22)); background-size: 240% 100%; box-shadow: 0 0 0 1px rgba(255,211,106,0.28), 0 5px 14px rgba(255,184,40,0.42); animation: compatibility-running-bar 0.9s ease-in-out infinite; }
.compatibility-check-run.is-waiting:disabled { opacity: 0.46; background: rgba(151,164,181,0.22); color: var(--muted); box-shadow: inset 0 0 0 1px rgba(80,94,112,0.12); }
.compatibility-check-run.is-looking-up:disabled { background: rgba(151,164,181,0.24); color: var(--muted); cursor: wait; }
.compatibility-check-run.is-existing, .compatibility-check-run.is-existing.is-secondary { background: rgba(80,200,120,0.14); color: #2f7d48; box-shadow: inset 0 0 0 1px rgba(80,200,120,0.34), 0 8px 20px rgba(80,200,120,0.10); }
.compatibility-check-run.is-existing:hover, .compatibility-check-run.is-existing:focus-visible { background: rgba(80,200,120,0.22); outline: 0; }
.compatibility-check-run-icon { width: 17px; height: 17px; margin-right: 7px; fill: none; stroke: currentColor; stroke-width: 2.7; stroke-linecap: round; stroke-linejoin: round; }
.compatibility-check-run-label { display: block; min-width: 0; overflow-wrap: anywhere; }
.compatibility-check-run-points { position: absolute; top: -12px; right: -7px; min-width: 34px; min-height: 22px; display: inline-flex; align-items: center; justify-content: center; border-radius: 999px; padding: 0 8px; background: #ffd36a; color: #755711; border: 1px solid rgba(255,255,255,0.76); box-shadow: 0 7px 16px rgba(87,69,25,0.16); font-size: 0.66rem; font-weight: 950; line-height: 1; white-space: nowrap; pointer-events: none; }
.compatibility-check-run:disabled .compatibility-check-run-points { opacity: 0.62; }
.compatibility-check-run.is-running .compatibility-check-run-points { opacity: 1; }
@keyframes compatibility-running-bar {
    0% { background-position: 100% 0; }
    100% { background-position: -100% 0; }
}
.compatibility-check-selection { padding-right: 8px; color: var(--muted); font-size: 0.78rem; font-weight: 800; }
.compatibility-check-current, .compatibility-check-list { display: grid; align-content: start; gap: 10px; min-width: 0; padding: 14px; border: 1px solid rgba(255,255,255,0.58); border-radius: 16px; background: rgba(255,255,255,0.38); box-shadow: inset 0 1px 0 rgba(255,255,255,0.64), 0 14px 32px rgba(86,76,55,0.06); }
.compatibility-check-current { order: 40; margin-top: 12px; }
.compatibility-check-current[hidden] { display: none; }
.compatibility-check-search-shell { order: 45; width: 100%; margin-top: 12px; }
.compatibility-check-search { width: 100%; min-height: 48px; display: grid; grid-template-columns: 22px minmax(0, 1fr) auto auto; align-items: center; gap: 10px; padding: 6px 8px 6px 16px; border: 1px solid rgba(255,255,255,0.62); border-radius: 15px; background: rgba(255,255,255,0.52); box-shadow: inset 0 1px 0 rgba(255,255,255,0.78), 0 12px 28px rgba(86,76,55,0.055); color: var(--muted); transition: border-color 150ms ease, background 150ms ease, box-shadow 150ms ease; }
.compatibility-check-search:focus-within { border-color: rgba(var(--action-rgb),0.34); background: rgba(255,255,255,0.72); box-shadow: inset 0 1px 0 rgba(255,255,255,0.88), 0 0 0 3px rgba(var(--action-rgb),0.09), 0 14px 30px rgba(66,83,105,0.075); }
.compatibility-check-search > svg { width: 20px; height: 20px; fill: none; stroke: var(--action); stroke-width: 2; stroke-linecap: round; }
.compatibility-check-search input { min-width: 0; width: 100%; height: 34px; padding: 0; border: 0; outline: 0; background: transparent; color: var(--ink); font: inherit; font-size: 0.91rem; font-weight: 760; }
.compatibility-check-search input::placeholder { color: var(--muted); opacity: 0.78; }
.compatibility-check-search input::-webkit-search-cancel-button { display: none; }
.compatibility-check-search-results { min-width: 76px; min-height: 28px; display: inline-flex; align-items: center; justify-content: center; padding: 0 10px; border-radius: 999px; background: rgba(var(--action-rgb),0.08); color: var(--action); font-size: 0.72rem; font-weight: 880; white-space: nowrap; }
.compatibility-check-search-clear { width: 34px; height: 34px; display: inline-flex; align-items: center; justify-content: center; padding: 0; border: 0; border-radius: 50%; background: rgba(184,61,99,0.10); color: #b83d63; cursor: pointer; transition: background 140ms ease, transform 140ms ease; }
.compatibility-check-search-clear[hidden] { display: none; }
.compatibility-check-search-clear:hover, .compatibility-check-search-clear:focus-visible { background: rgba(184,61,99,0.17); transform: translateY(-1px); outline: 0; }
.compatibility-check-search-clear svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; }
.compatibility-check-lists { width: 100%; display: grid; grid-template-columns: minmax(0, 1fr); gap: 14px; order: 50; margin-top: 12px; }
.compatibility-check-list h2 { margin: 0; color: var(--ink); font-size: 0.94rem; font-weight: 900; letter-spacing: -0.01em; }
.compatibility-login-prompt { display: grid; gap: 10px; }
.compatibility-login-prompt[hidden] { display: none; }
.compatibility-login-prompt p { margin: 0; color: var(--muted); font-size: 0.82rem; line-height: 1.4; font-weight: 780; }
.compatibility-login-form { width: min(620px, 100%); }
.catalog-product-check-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; align-items: stretch; }
.catalog-product-check-entry { min-width: 0; display: flex; }
.catalog-product-check-entry > .compatibility-check-item { width: 100%; }
.catalog-product-check-more { justify-self: start; margin-top: 2px; }
.catalog-product-check-entry[hidden], .catalog-product-check-more[hidden] { display: none; }
.compatibility-check-items { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 11px; align-items: stretch; }
.compatibility-check-item { position: relative; display: grid; gap: 7px; min-width: 0; padding: 11px 12px; border: 1px solid rgba(255,255,255,0.58); border-radius: 12px; background: rgba(250,246,237,0.58); color: var(--muted); box-shadow: inset 0 1px 0 rgba(255,255,255,0.68), 0 8px 20px rgba(86,76,55,0.035); font-size: 0.76rem; font-weight: 760; line-height: 1.35; }
.compatibility-check-item-detailed { gap: 12px; padding: 14px; }
.compatibility-check-item-compact { grid-template-rows: auto minmax(0, 1fr) auto; align-content: stretch; gap: 7px; padding: 8px 9px; border-radius: 9px; color: inherit; text-decoration: none; transition: background 150ms ease, border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease; }
.compatibility-check-item-compact:hover, .compatibility-check-item-compact:focus-visible, .compatibility-check-item-compact:focus-within { border-color: rgba(var(--action-rgb),0.24); background: rgba(255,255,255,0.66); box-shadow: inset 0 1px 0 rgba(255,255,255,0.78), 0 13px 28px rgba(66,83,105,0.09); color: inherit; text-decoration: none; transform: translateY(-1px); outline: 0; }
.compatibility-check-card-link { position: absolute; inset: 0; z-index: 1; border-radius: inherit; }
.compatibility-check-overview-head, .compatibility-check-overview-products { position: relative; z-index: 2; pointer-events: none; }
.compatibility-check-overview-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-width: 0; }
.compatibility-check-result-head { display: grid; grid-template-columns: minmax(130px, auto) minmax(0, 1fr); align-items: center; gap: 11px; min-width: 0; }
.compatibility-check-item strong { min-width: 0; color: var(--ink); font-size: 0.86rem; line-height: 1.25; overflow-wrap: anywhere; }
.compatibility-check-item a { color: inherit; text-decoration: none; }
.compatibility-check-item a:hover { color: var(--action); text-decoration: none; }
.compatibility-check-summary { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; font-size: 0.84rem; line-height: 1.28; }
.compatibility-check-overview-meta { flex: 0 1 auto; display: flex; flex-wrap: wrap; justify-content: flex-end; align-items: center; gap: 3px 9px; min-width: 0; color: var(--muted); font-size: 0.66rem; font-weight: 760; text-align: right; }
.compatibility-check-item-compact .compatibility-check-overview-meta { align-self: end; justify-content: flex-start; gap: 3px 8px; padding-top: 3px; text-align: left; }
.compatibility-check-overview-meta time, .compatibility-check-overview-meta > span { white-space: nowrap; }
.compatibility-check-author { position: relative; z-index: 3; color: var(--action) !important; font-weight: 880; text-decoration: none !important; pointer-events: auto; }
.compatibility-check-author:hover, .compatibility-check-author:focus-visible { color: var(--ink) !important; text-decoration: underline !important; outline: 0; }
.compatibility-check-overview-products { min-width: 0; margin: 0; color: var(--ink); }
.compatibility-check-overview-products { display: grid; grid-template-columns: minmax(0, 1fr); align-content: start; gap: 2px; padding: 0; list-style: none; font-size: 0.72rem; font-weight: 790; line-height: 1.25; }
.compatibility-check-overview-products li { position: relative; min-width: 0; padding: 2px 0 2px 13px; border-radius: 0; background: transparent; overflow-wrap: anywhere; }
.compatibility-check-overview-products li::before { content: ""; position: absolute; left: 2px; top: 0.62em; width: 4px; height: 4px; border-radius: 50%; background: rgba(var(--action-rgb),0.72); }
.compatibility-check-card { position: relative; grid-template-columns: minmax(0, 1fr); grid-template-rows: auto minmax(118px, 1fr) auto 25px; align-content: stretch; gap: 0; min-height: 280px; padding: 0; overflow: visible; border-radius: 8px; background: rgba(250,246,237,0.78); }
.compatibility-check-card:hover, .compatibility-check-card:focus-within { background: rgba(255,255,255,0.78); }
.compatibility-check-card-header { min-width: 0; display: grid; grid-template-columns: minmax(0, auto) minmax(0, 1fr); align-items: start; gap: 7px; padding: 9px 9px 7px; border-radius: 8px 8px 0 0; background: rgba(255,255,255,0.78); }
.compatibility-check-card-visual { position: relative; min-width: 0; min-height: 176px; background: rgba(255,255,255,0.84); }
.compatibility-check-card-images { width: 100%; height: 100%; min-height: 176px; display: grid; overflow: hidden; background: rgba(255,255,255,0.88); }
.compatibility-check-card-images.is-count-1 { grid-template-columns: 1fr; }
.compatibility-check-card-images.is-count-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.compatibility-check-card-images.is-count-3,
.compatibility-check-card-images.is-count-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(2, minmax(0, 1fr)); }
.compatibility-check-card-images img { width: 100%; height: 100%; min-width: 0; min-height: 0; display: block; object-fit: contain; background: #fff; }
.compatibility-check-card-images.is-count-3 img:first-child { grid-row: 1 / span 2; }
.compatibility-check-card-image-placeholder { width: 100%; height: 100%; min-height: 176px; display: flex; align-items: center; justify-content: center; color: rgba(99,101,96,0.62); background: rgba(255,255,255,0.76); }
.compatibility-check-card-image-placeholder svg { width: 58px; height: 58px; fill: none; stroke: currentColor; stroke-width: 1.55; stroke-linecap: round; stroke-linejoin: round; }
.compatibility-check-card-status { position: relative; z-index: 3; min-width: 0; pointer-events: none; }
.compatibility-check-card-status .compatibility-status-badge { min-width: 0; min-height: 32px; gap: 6px; }
.compatibility-check-card-status .compatibility-status-badge > span:last-child { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-height: 1.12; white-space: normal; }
.compatibility-check-card-status .compatibility-status-mark { flex-basis: 29px; width: 29px; height: 29px; }
.compatibility-check-card-status .compatibility-status-mark svg { width: 17px; height: 17px; }
.compatibility-check-score { min-height: 23px; display: inline-flex; align-items: center; padding: 0 8px; border-radius: 999px; background: rgba(255,255,255,0.70); color: var(--muted); font-size: 0.64rem; font-weight: 900; white-space: nowrap; }
.compatibility-check-card-actions { position: relative; z-index: 5; display: flex; align-items: center; justify-content: center; gap: 7px; min-height: 0; margin-top: -21px; pointer-events: auto; }
.compatibility-check-engagement-button { position: relative; width: 43px; height: 43px; display: inline-flex; align-items: center; justify-content: center; gap: 0; padding: 0; border: 1px solid rgba(255,255,255,0.90); border-radius: 50%; background: rgba(255,255,255,0.96); color: var(--action); box-shadow: 0 9px 22px rgba(70,66,56,0.13), inset 0 1px 0 rgba(255,255,255,0.94); cursor: pointer; transition: color 150ms ease, background 150ms ease, box-shadow 150ms ease, transform 150ms ease; }
.compatibility-check-engagement-button:hover, .compatibility-check-engagement-button:focus-visible { color: var(--ink); background: #fff; box-shadow: 0 12px 26px rgba(70,66,56,0.17), 0 0 0 3px rgba(var(--action-rgb),0.10); transform: translateY(-2px); outline: 0; }
.compatibility-check-engagement-button svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.compatibility-check-engagement-button > span { position: absolute; right: -3px; bottom: -2px; min-width: 19px; height: 19px; display: inline-flex; align-items: center; justify-content: center; padding: 0 5px; border: 2px solid rgba(255,255,255,0.94); border-radius: 999px; background: #fff; color: var(--action); font-size: 0.61rem; font-weight: 950; line-height: 1; }
.compatibility-check-engagement-button.is-like.is-active { color: #bf3d6a; background: rgba(255,238,245,0.98); }
.compatibility-check-engagement-button.is-like.is-active svg { fill: currentColor; }
.compatibility-check-engagement-button.is-like.is-active > span { background: #bf3d6a; color: #fff; }
.compatibility-check-engagement-button.is-save.is-active { color: #8a6817; background: rgba(255,242,197,0.98); }
.compatibility-check-engagement-button.is-save.is-active svg { fill: #ffd36a; }
.compatibility-check-engagement-button:disabled { cursor: wait; opacity: 0.64; transform: none; }
.compatibility-check-card-content { min-width: 0; display: grid; align-content: start; gap: 8px; padding: 9px 9px 31px; }
.compatibility-check-card .compatibility-check-overview-meta { position: relative; z-index: 4; display: grid; justify-content: end; justify-items: end; align-content: start; gap: 1px; min-width: 0; padding: 2px 0 0; text-align: right; pointer-events: auto; }
.compatibility-check-card .compatibility-check-overview-meta time, .compatibility-check-card .compatibility-check-overview-meta > span, .compatibility-check-card .compatibility-check-author { max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.compatibility-check-card .compatibility-check-overview-products { display: grid; gap: 6px; align-content: start; font-size: 0.76rem; line-height: 1.2; }
.compatibility-check-card .compatibility-check-overview-products li { display: grid; grid-template-columns: 34px minmax(0, 1fr); align-items: center; gap: 7px; min-width: 0; padding: 4px; border-radius: 7px; background: rgba(255,255,255,0.50); }
.compatibility-check-card .compatibility-check-overview-products li > span:last-child { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; color: var(--ink); font-weight: 850; overflow-wrap: anywhere; }
.compatibility-check-card .compatibility-check-overview-products li + li::before { content: none; }
.compatibility-check-product-thumb, .compatibility-check-product-thumb img, .compatibility-check-product-thumb-placeholder { width: 34px; height: 34px; display: block; border-radius: 6px; background: rgba(255,255,255,0.82); }
.compatibility-check-product-thumb { overflow: hidden; }
.compatibility-check-product-thumb img { object-fit: contain; }
.compatibility-check-product-thumb-placeholder { display: flex; align-items: center; justify-content: center; color: rgba(99,101,96,0.52); }
.compatibility-check-product-thumb-placeholder svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.55; stroke-linecap: round; stroke-linejoin: round; }
.compatibility-check-card-footer { min-width: 0; min-height: 25px; display: flex; align-items: end; justify-content: flex-start; padding: 0 9px 6px; }
.compatibility-check-product-list span { overflow-wrap: anywhere; }
.compatibility-check-product-separator { padding: 0 5px; color: rgba(var(--action-rgb),0.72); }
.compatibility-status-badge { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 7px; min-height: 28px; color: var(--ink); font-size: 0.7rem; font-weight: 900; line-height: 1; white-space: nowrap; }
.compatibility-status-mark { position: relative; flex: 0 0 28px; width: 28px; height: 28px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; background: rgba(var(--action-rgb),0.12); color: var(--action); box-shadow: inset 0 0 0 1px rgba(var(--action-rgb),0.18), 0 5px 14px rgba(67,94,126,0.09); }
.compatibility-status-mark svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 2.15; stroke-linecap: round; stroke-linejoin: round; }
.compatibility-status-badge.is-fits .compatibility-status-mark { background: var(--action); color: #fff; box-shadow: 0 6px 16px rgba(var(--action-rgb),0.24), inset 0 1px 0 rgba(255,255,255,0.34); }
.compatibility-status-badge.is-limited .compatibility-status-mark { background: rgba(var(--action-rgb),0.11); color: var(--action); box-shadow: inset 0 0 0 1px rgba(var(--action-rgb),0.22), 0 5px 14px rgba(67,94,126,0.09); }
.compatibility-status-badge.is-incompatible .compatibility-status-mark { background: rgba(190,88,105,0.10); color: #a44b5a; box-shadow: inset 0 0 0 1px rgba(190,88,105,0.20); }
.compatibility-status-badge.is-unclear .compatibility-status-mark { background: rgba(92,116,142,0.10); color: #64788e; box-shadow: inset 0 0 0 1px rgba(92,116,142,0.18); }
.compatibility-check-product-cards { display: grid; gap: 8px; }
.compatibility-check-product-cards h3 { margin: 0; color: var(--ink); font-size: 0.78rem; font-weight: 900; }
.compatibility-check-product-cards > div { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 8px; }
.compatibility-check-product-card { display: grid; grid-template-columns: 42px minmax(0, 1fr); gap: 8px; align-items: center; min-width: 0; padding: 7px; border-radius: 8px; background: rgba(255,255,255,0.56); box-shadow: inset 0 1px 0 rgba(255,255,255,0.56); color: inherit; text-decoration: none; }
.compatibility-check-product-card img, .compatibility-check-product-placeholder { width: 42px; aspect-ratio: 1; border-radius: 7px; background: rgba(255,255,255,0.62); object-fit: contain; }
.compatibility-check-product-card-text { display: grid; gap: 2px; min-width: 0; }
.compatibility-check-product-card-text strong { display: block; color: var(--ink); font-size: 0.76rem; line-height: 1.16; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.compatibility-check-product-card-text small { display: block; color: var(--muted); font-size: 0.68rem; font-weight: 760; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.compatibility-check-sections { display: grid; gap: 8px; }
.compatibility-check-sections article { display: grid; gap: 4px; min-width: 0; padding: 9px; border-radius: 8px; background: rgba(255,255,255,0.42); }
.compatibility-check-sections h3 { margin: 0; color: var(--ink); font-size: 0.78rem; line-height: 1.2; }
.compatibility-check-sections p { margin: 0; color: var(--muted); font-size: 0.78rem; line-height: 1.45; overflow-wrap: anywhere; }
.compatibility-detail-page { display: grid; gap: 16px; }
.compatibility-detail-hero, .compatibility-detail-result, .compatibility-detail-products, .compatibility-detail-product, .compatibility-detail-list { min-width: 0; padding: 18px; border-radius: 8px; background: var(--glass); border: 1px solid var(--glass-border); box-shadow: var(--glass-shadow); backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.compatibility-detail-hero { display: grid; gap: 12px; }
.compatibility-detail-hero h1 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: clamp(1rem, 2.5vw, 1.5rem); line-height: 1.04; }
.compatibility-detail-hero p, .compatibility-detail-result p, .compatibility-detail-list p { margin: 0; color: var(--muted); line-height: 1.55; }
.compatibility-detail-meta { display: flex; flex-wrap: wrap; gap: 8px; }
.compatibility-detail-meta span { min-height: 28px; display: inline-flex; align-items: center; padding: 0 10px; border-radius: 999px; background: var(--glass-child); color: var(--muted); font-size: 0.78rem; font-weight: 820; }
.compatibility-detail-products { display: grid; gap: 12px; }
.compatibility-detail-products > h2, .compatibility-detail-result > h2 { margin: 0; color: var(--ink); font-size: 1rem; line-height: 1.22; }
.compatibility-detail-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 10px; }
.compatibility-detail-columns { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 14px; }
.compatibility-detail-product { display: grid; grid-template-columns: 58px minmax(0, 1fr); gap: 10px; align-items: center; padding: 10px; background: rgba(255,255,255,0.46); }
.compatibility-detail-product img, .compatibility-detail-product-placeholder { width: 58px; aspect-ratio: 1; border-radius: 8px; background: var(--glass-child); object-fit: contain; }
.compatibility-detail-product h3, .compatibility-detail-result h2, .compatibility-detail-result h3, .compatibility-detail-list h2 { margin: 0; color: var(--ink); font-size: 1rem; line-height: 1.22; }
.compatibility-detail-product a { color: inherit; text-decoration: none; }
.compatibility-detail-product a:hover { color: var(--action); text-decoration: underline; }
.compatibility-detail-product p { margin: 4px 0 0; color: var(--muted); font-size: 0.86rem; }
.compatibility-detail-result { display: grid; gap: 12px; }
.compatibility-detail-result-head { display: flex; align-items: flex-start; gap: 10px; }
.compatibility-detail-sections article { display: grid; gap: 6px; padding: 12px; border-radius: 8px; background: rgba(255,255,255,0.40); }
.compatibility-detail-list { display: grid; gap: 10px; }
.compatibility-detail-list ul { display: grid; gap: 7px; margin: 0; padding-left: 18px; color: var(--muted); line-height: 1.45; }
.compatibility-detail-footnote { margin: -4px 0 0; color: var(--muted); font-size: 0.72rem; line-height: 1.42; opacity: 0.78; }
@media (max-width: 1199px) {
    .compatibility-check-items { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 820px) {
    .compatibility-check-items { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
    .compatibility-check-current, .compatibility-check-list { padding: 11px; border-radius: 13px; }
    .compatibility-check-search { grid-template-columns: 20px minmax(0, 1fr) auto; gap: 8px; padding-left: 13px; }
    .compatibility-check-search-results { grid-column: 2; justify-self: start; min-width: 0; margin-top: -5px; background: transparent; padding: 0; }
    .compatibility-check-search-clear { grid-column: 3; grid-row: 1 / span 2; }
    .compatibility-check-result-head { grid-template-columns: 1fr; align-items: start; gap: 7px; }
    .compatibility-status-badge { justify-self: start; min-height: 28px; }
    .compatibility-check-overview-head { gap: 8px; }
    .compatibility-check-overview-meta { display: grid; justify-items: end; gap: 2px; padding-top: 3px; }
    .compatibility-check-overview-products { display: grid; gap: 3px; }
    .compatibility-check-overview-products li + li::before { content: none; }
    .compatibility-check-items { grid-template-columns: 1fr; }
    .compatibility-check-card { min-height: 0; }
    .compatibility-check-card-header { grid-template-columns: minmax(0, 1fr) auto; }
    .compatibility-check-card-content { padding: 9px 9px 31px; }
    .compatibility-check-card .compatibility-check-overview-meta { justify-content: end; justify-items: end; text-align: right; }
}
.gallery { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-flow: row; gap: 16px; order: 30; }
.gallery.product-view-list, .gallery.product-view-list-image { grid-template-columns: 1fr; gap: 8px; }
.gallery.product-view-grid-6 { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.gallery.product-view-grid-8 { grid-template-columns: repeat(8, minmax(0, 1fr)); gap: 10px; }
.gallery.product-view-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.gallery.product-view-grid-5 { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; }
.gallery.product-project-groups { grid-template-columns: minmax(0, 1fr); gap: 24px; }
.product-project-group { min-width: 0; margin: 0; padding: 2px 14px 14px; border: 1px solid rgba(var(--action-rgb),0.38); border-radius: 12px; }
.product-project-legend { max-width: calc(100% - 18px); padding: 0 8px; color: var(--action); }
.product-project-legend, .product-project-actions { display: inline-flex; align-items: center; gap: 8px; }
.product-project-legend > a { min-width: 0; overflow: hidden; color: inherit; font-weight: 850; text-overflow: ellipsis; white-space: nowrap; text-decoration: none; }
.product-project-legend > a:hover, .product-project-legend > a:focus-visible { text-decoration: underline; outline: 0; }
.product-project-actions { flex: 0 0 auto; }
.project-group-action { position: relative; display: inline-grid; width: 30px; height: 30px; place-items: center; padding: 0; border: 0; border-radius: 999px; background: rgba(255,255,255,0.72); color: var(--action); cursor: pointer; box-shadow: inset 0 0 0 1px rgba(var(--action-rgb),0.14); }
.project-group-action svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.project-group-action[aria-pressed="true"] { background: rgba(255,239,244,0.95); color: #b83d63; }
.project-group-action.is-static { cursor: default; opacity: 0.72; }
.project-group-action-count { position: absolute; right: -3px; bottom: -3px; min-width: 16px; height: 16px; display: grid; place-items: center; padding: 0 3px; border-radius: 999px; background: #fff; color: var(--muted); font-size: 0.58rem; font-weight: 900; box-shadow: 0 2px 6px rgba(31,53,75,0.14); }
.product-project-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; min-width: 0; }
@media (max-width: 1100px) {
    .gallery.product-view-grid-5, .product-project-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
    .gallery.product-view-grid-5 { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
    .gallery.product-view-grid-5 .product-card-metrics { overflow: clip; }
    .product-project-grid { grid-template-columns: minmax(0, 1fr); }
    .product-project-group { padding: 2px 10px 10px; }
    .product-project-legend { display: flex; width: calc(100% - 12px); max-width: none; }
    .product-project-legend > a { flex: 1 1 auto; }
}
@media (max-width: 760px) and (orientation: portrait) {
    .product-project-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
}
.product-card { position: relative; display: grid; grid-template-columns: minmax(0, 1fr); align-content: start; justify-self: stretch; gap: 5px; width: 100%; min-width: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; color: inherit; text-decoration: none; overflow: visible; backdrop-filter: none; -webkit-backdrop-filter: none; }
.product-card-box { position: relative; display: grid; grid-column: 1; grid-row: 2; align-content: start; justify-self: stretch; gap: 0; width: 100%; min-width: 0; border-radius: 8px; overflow: visible; }
.product-card.is-compatibility-marked .product-card-box { outline: 2px solid var(--action); box-shadow: var(--glass-shadow), 0 0 0 4px rgba(var(--action-rgb),0.13); }
.product-card.is-compatibility-selected .product-card-box { outline: 3px solid var(--action); box-shadow: var(--glass-shadow), 0 0 0 6px rgba(var(--action-rgb),0.18); }
.product-card.is-newly-added .product-card-box { outline: 1px solid rgba(var(--action-rgb),0.72); box-shadow: var(--glass-shadow), 0 0 0 4px rgba(var(--action-rgb),0.10); }
.product-card-link { position: absolute; inset: 0; z-index: 1; border-radius: inherit; }
.product-card > .product-compatibility-text-action { position: relative; grid-area: auto; grid-column: 1; grid-row: 1; z-index: 5; pointer-events: auto; }
.product-card > .product-check-card-tools { position: relative; grid-column: 1; grid-row: 1; z-index: 5; min-width: 0; min-height: 48px; display: grid; align-content: start; justify-content: start; justify-items: start; gap: 6px; padding: 0 8px 4px; pointer-events: auto; }
.product-check-remove, .product-check-select-toggle { border: 0; background: transparent; color: var(--ink); cursor: pointer; font: inherit; line-height: 1; }
.product-check-remove { min-width: 0; padding: 0; color: #d94b5a; font-size: 0.82rem; font-weight: 880; text-align: left; }
.product-check-remove:hover, .product-check-remove:focus-visible { color: #b43846; text-decoration: underline; outline: 0; }
.product-check-select-toggle { --compat-toggle-width: 34px; --compat-toggle-height: 19px; --compat-toggle-knob: 15px; --compat-toggle-travel: 15px; display: inline-flex; align-items: center; gap: 6px; padding: 0; font-size: 0.82rem; font-weight: 860; white-space: nowrap; }
.product-check-select-toggle:hover, .product-check-select-toggle:focus-visible { color: var(--action); outline: 0; }
.product-check-select-switch { position: relative; flex: 0 0 auto; width: var(--compat-toggle-width); height: var(--compat-toggle-height); border-radius: 999px; background: rgba(112,109,101,0.28); box-shadow: inset 0 1px 2px rgba(70,66,56,0.16), 0 4px 12px rgba(87,69,25,0.10); transition: background 140ms ease, box-shadow 140ms ease; }
.product-check-select-switch span { position: absolute; top: 2px; left: 2px; width: var(--compat-toggle-knob); height: var(--compat-toggle-knob); border-radius: 999px; background: rgba(255,255,255,0.94); box-shadow: 0 2px 5px rgba(70,66,56,0.22); transition: transform 140ms ease, background 140ms ease; }
.product-check-select-toggle[aria-pressed="true"] .product-check-select-switch { background: var(--action); box-shadow: inset 0 1px 2px rgba(44,80,128,0.14), 0 5px 14px rgba(var(--action-rgb),0.18); }
.product-check-select-toggle[aria-pressed="true"] .product-check-select-switch span { transform: translateX(var(--compat-toggle-travel)); background: #ffd36a; }
.product-card-box > :not(.product-card-link) { position: relative; z-index: 2; pointer-events: none; }
.product-card-box > .product-card-publication-status { pointer-events: auto; }
.product-card .product-manufacturer-link { position: relative; z-index: 3; pointer-events: auto; }
.product-card .product-card-actions, .product-card .product-add-inventory-button, .product-card .product-add-inventory-status { position: relative; z-index: 3; pointer-events: auto; }
.product-card .product-card-action { position: absolute; top: 5px; z-index: 4; pointer-events: auto; text-decoration: none; }
.product-card .product-add-inventory-button, .product-card .product-add-inventory-status { right: auto; background: rgba(255,255,255,0.92); color: var(--action); box-shadow: 0 7px 18px rgba(61,67,75,0.13), inset 0 1px 0 rgba(255,255,255,0.94); cursor: pointer; }
.product-card .product-add-inventory-button svg, .product-card .product-add-inventory-status svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 2.35; stroke-linecap: round; stroke-linejoin: round; }
.product-card .product-add-inventory-button:hover { background: #fff; filter: none; }
.product-card .product-add-inventory-button.is-disabled { opacity: 1; filter: none; }
.product-card .product-add-inventory-button.is-disabled:hover { opacity: 1; filter: none; }
.product-card .product-add-inventory-button.is-done, .product-card .product-add-inventory-status.is-done { background: rgba(255,211,106,0.88); color: #72550c; box-shadow: 0 7px 18px rgba(112,86,25,0.15), inset 0 1px 0 rgba(255,255,255,0.76); }
.product-card .product-add-inventory-status.is-done { text-decoration: none; font-weight: 940; cursor: pointer; }
.product-card .product-add-inventory-status.is-done:hover, .product-card .product-add-inventory-status.is-done:focus-visible { background: #ffd36a; color: var(--action); filter: brightness(0.98); outline: 0; }
.product-card .product-add-inventory-button.is-done .icon-remove { display: none; }
@media (hover: hover) and (pointer: fine) {
  .product-card .product-add-inventory-button.is-done:hover { background: #d94b5a; color: #fff; filter: none; }
  .product-card .product-add-inventory-button.is-done:hover .icon-check { display: none; }
  .product-card .product-add-inventory-button.is-done:hover .icon-remove { display: block; }
}
.product-card .product-card-metrics { position: relative; top: auto; left: auto; right: auto; z-index: 4; width: 100%; min-height: 0; grid-template-columns: minmax(0, 1fr); grid-template-areas: "meta"; align-items: start; gap: 0; padding: 0; border: 0; border-radius: 8px 8px 0 0; background: transparent; box-shadow: none; pointer-events: none; }
.product-card .product-compatibility-text-action { pointer-events: auto; align-self: start; justify-self: start; max-width: calc(100% - 68px); min-height: 24px; margin-left: 22px; padding: 0; font-size: 0.82rem; line-height: 1.08; white-space: nowrap; overflow-wrap: normal; }
.product-card .product-compatibility-text-action { --compat-toggle-width: 34px; --compat-toggle-height: 19px; --compat-toggle-knob: 15px; --compat-toggle-travel: 15px; }
.product-card .product-community-meta { pointer-events: auto; justify-self: center; width: fit-content; max-width: calc(100% - 104px); min-height: 24px; margin-top: 4px; padding: 0 8px; border-radius: 999px; font-size: 0.68rem; }
.product-card .product-community-meta span + span::before { margin: 0 6px; }
.product-card .product-like-button, .product-card .product-compatibility-button { z-index: 4; pointer-events: auto; padding: 0; cursor: pointer; transition: color 120ms ease, opacity 120ms ease; }
.product-card .product-like-button svg, .product-card .product-compatibility-button svg { display: block; margin: 0; }
.product-card .product-card-counter { z-index: 4; pointer-events: none; }
.product-card .product-inventory-counter { right: 123px; }
.product-card .product-project-counter { right: 81px; }
.product-card .product-card-metrics .product-card-counter, .product-card .product-card-metrics .product-like-button, .product-card .product-card-metrics .product-compatibility-button, .product-card .product-card-metrics .product-card-action { position: relative; top: auto; right: auto; z-index: auto; pointer-events: auto; }
.product-card .product-card-metrics .product-card-counter { pointer-events: none; }
.product-card .product-card-metrics .product-card-action { margin-left: 2px; }
.product-card .product-card-metrics .product-add-inventory-button, .product-card .product-card-metrics .product-add-inventory-status { position: absolute; top: -19px; right: 8px; z-index: 6; pointer-events: auto; justify-self: auto; align-self: auto; width: 44px; height: 44px; min-height: 44px; flex-basis: 44px; border: 1px solid rgba(72,83,97,0.12); box-shadow: 0 7px 18px rgba(61,67,75,0.13), inset 0 1px 0 rgba(255,255,255,0.94); transform: none; }
.product-card .product-card-metrics .product-add-inventory-button svg, .product-card .product-card-metrics .product-add-inventory-status svg { width: 21px; height: 21px; }
.product-card .product-card-metrics .product-card-like-button { position: absolute; top: -19px; left: 8px; z-index: 6; width: 44px; height: 44px; pointer-events: auto; border: 1px solid rgba(72,83,97,0.12); box-shadow: 0 7px 18px rgba(61,67,75,0.13), inset 0 1px 0 rgba(255,255,255,0.94); }
.product-card .product-card-metrics .product-card-like-button svg { width: 23px; height: 23px; }
.product-card .product-counter-count { position: absolute; inset: 0; display: grid; place-items: center; color: var(--action); font-size: 0.62rem; font-weight: 900; line-height: 1; transform: translateY(2px); text-shadow: 0 1px 0 rgba(255,255,255,0.72); }
.product-card .product-like-button[aria-pressed="true"] .icon-main, .product-card .product-compatibility-button[aria-pressed="true"] .icon-main { fill: currentColor; stroke: currentColor; }
.product-card .product-like-button:disabled, .product-card .product-compatibility-button:disabled { opacity: 0.5; cursor: progress; }
.product-card .product-like-display, .product-card .product-compatibility-display { pointer-events: auto; cursor: help; }
.product-card .product-like-count { position: absolute; inset: auto -4px -3px auto; display: grid; place-items: center; min-width: 18px; height: 18px; color: var(--action); font-size: 0.55rem; font-weight: 900; line-height: 1; transform: none; text-shadow: none; }
.product-card .product-compatibility-count { position: absolute; inset: 0; display: grid; place-items: center; color: var(--action); font-size: 0.62rem; font-weight: 900; line-height: 1; transform: translateY(2px); text-shadow: 0 1px 0 rgba(255,255,255,0.72); }
.product-card .product-like-button[aria-pressed="true"] .product-like-count, .product-card .product-like-button.is-gold .product-like-count, .product-card .product-compatibility-button[aria-pressed="true"] .product-compatibility-count, .product-card .product-compatibility-button.is-gold .product-compatibility-count { color: #fff; text-shadow: 0 1px 2px rgba(60,48,20,0.22); }
.product-card .product-like-button.is-gold, .product-card .product-compatibility-button.is-gold { color: #d8a622; }
.product-card .product-like-button.is-gold svg, .product-card .product-compatibility-button.is-gold svg { filter: drop-shadow(0 4px 10px rgba(216,166,34,0.24)); }
.product-card .product-like-button.is-gold .icon-main, .product-card .product-compatibility-button.is-gold .icon-main { fill: currentColor; stroke: currentColor; }
.product-card-box > .product-3d-card-badge { position: absolute; top: 10px; right: 10px; z-index: 8; pointer-events: none; background: rgba(255,255,255,0.88); color: var(--action); box-shadow: 0 7px 18px rgba(47,64,84,0.12), inset 0 1px 0 rgba(255,255,255,0.92); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.product-action-counter.product-compatibility-button .icon-hover, .product-action-counter.product-compatibility-display .icon-hover, .product-action-counter.product-compatibility-counter .icon-hover, .product-action-counter.product-compatibility-button .icon-marked, .product-action-counter.product-compatibility-display .icon-marked, .product-action-counter.product-compatibility-counter .icon-marked { display: none; }
.product-action-counter.product-compatibility-button[aria-pressed="true"] { color: #d8a622; }
.product-action-counter.product-compatibility-button[aria-pressed="true"] .icon-unmarked, .product-action-counter.product-compatibility-button[aria-pressed="true"] .icon-unmarked-hover { display: none; }
.product-action-counter.product-compatibility-button[aria-pressed="true"] .icon-marked { display: inline; }
.product-action-counter.product-compatibility-button:not([aria-pressed="true"]):hover .icon-unmarked { display: none; }
.product-action-counter.product-compatibility-button:not([aria-pressed="true"]):hover .icon-unmarked-hover { display: inline; }
.product-action-counter.product-compatibility-button[aria-pressed="true"]:hover .icon-marked { display: none; }
.product-action-counter.product-compatibility-button[aria-pressed="true"]:hover .icon-marked-hover { display: inline; }
.product-action-counter.product-compatibility-button .icon-star-shape, .product-action-counter.product-compatibility-display .icon-star-shape, .product-action-counter.product-compatibility-counter .icon-star-shape { fill: none; }
.product-action-counter.product-compatibility-button[aria-pressed="true"] .icon-star-shape { fill: #ffd36a; stroke: #d8a622; }
.product-action-counter.product-compatibility-button .icon-mark, .product-action-counter.product-compatibility-display .icon-mark, .product-action-counter.product-compatibility-counter .icon-mark { fill: none; stroke: currentColor; stroke-width: 2.35; stroke-linecap: round; stroke-linejoin: round; }
.product-action-counter.product-compatibility-button[aria-pressed="true"] .icon-mark { stroke: var(--action); }
.product-action-counter.product-compatibility-button[aria-pressed="true"]:hover .icon-mark { stroke: #d94b5a; }
.product-card-link:focus-visible { outline: 2px solid var(--action); outline-offset: 4px; }
.product-image { display: grid; place-items: center; aspect-ratio: 1 / 1; overflow: hidden; margin: 0; border-radius: 0; background: #fff; }
.product-image img { display: block; width: auto; height: auto; max-width: 100%; max-height: 100%; object-fit: contain; object-position: center center; }
.product-image svg { width: 100%; height: 100%; object-fit: contain; object-position: center center; }
.product-image svg { padding: 24%; fill: none; stroke: currentColor; stroke-width: 2; color: var(--muted); }
.product-info { display: grid; gap: 6px; min-width: 0; margin: 0; padding: 14px 18px 46px; list-style: none; }
.product-info li { min-width: 0; color: var(--muted); font-size: 0.86rem; line-height: 1.35; overflow-wrap: anywhere; }
.product-info .product-name { display: -webkit-box; overflow: hidden; color: var(--ink); font-family: "Manrope", system-ui, sans-serif; font-size: 0.9rem; font-weight: 820; line-height: 1.2; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; }
.product-info .product-card-meta { color: var(--muted); font-size: 0.78rem; font-weight: 760; line-height: 1.25; }
.product-info .product-card-specs { color: var(--muted); font-size: 0.72rem; font-weight: 760; line-height: 1.32; }
.product-card .product-card-price { position: absolute; right: 14px; bottom: 12px; z-index: 4; max-width: calc(100% - 28px); color: var(--muted); font-size: 0.86rem; font-weight: 760; line-height: 1.18; text-align: right; pointer-events: none; white-space: nowrap; }
.product-card .product-card-price.has-region-notice { right: 14px; left: 14px; width: auto; max-width: none; text-align: left; white-space: normal; }
.product-card .product-card-price.has-region-notice .product-region-offer-notice { display: block; max-width: 100%; white-space: normal; overflow-wrap: anywhere; word-break: normal; }
.product-card-box:has(.product-region-offer-notice) .product-info { padding-bottom: 60px; }
.product-view-list .product-card, .product-view-list-image .product-card { gap: 4px; padding: 0; overflow: visible; }
.product-view-list .product-card-box, .product-view-list-image .product-card-box { display: grid; align-items: center; gap: 12px; padding: 8px 10px; overflow: hidden; }
.product-view-list .product-card-box { grid-template-columns: minmax(0, 1fr) auto; }
.product-view-list-image .product-card-box { grid-template-columns: 58px minmax(0, 1fr) auto; }
.product-view-list .product-card .product-card-metrics, .product-view-list-image .product-card .product-card-metrics { position: relative; top: auto; left: auto; right: auto; grid-row: 1; align-self: center; justify-self: end; grid-template-columns: auto minmax(0, 1fr) auto; grid-template-areas: "like meta inventory"; gap: 0 8px; width: min(480px, 50vw); min-height: 42px; padding: 0; border-radius: 0; background: transparent; pointer-events: none; }
.product-view-list .product-card .product-card-metrics { grid-column: 2; }
.product-view-list-image .product-card .product-card-metrics { grid-column: 3; }
.product-view-list .product-card .product-compatibility-text-action, .product-view-list-image .product-card .product-compatibility-text-action { max-width: 150px; margin-left: 0; font-size: 0.72rem; }
.product-view-list .product-card .product-community-meta, .product-view-list-image .product-card .product-community-meta { width: fit-content; max-width: min(100%, 360px); min-height: 30px; padding: 0 12px; border-radius: 999px; font-size: 0.72rem; }
.product-view-list .product-card .product-card-metrics .product-add-inventory-button, .product-view-list .product-card .product-card-metrics .product-add-inventory-status, .product-view-list-image .product-card .product-card-metrics .product-add-inventory-button, .product-view-list-image .product-card .product-card-metrics .product-add-inventory-status { position: relative; top: auto; right: auto; width: 42px; height: 42px; min-height: 42px; flex-basis: 42px; border: 0; transform: none; }
.product-view-list .product-card .product-card-metrics .product-card-like-button, .product-view-list-image .product-card .product-card-metrics .product-card-like-button { position: relative; top: auto; left: auto; width: 42px; height: 42px; border: 0; transform: none; }
.product-view-list-image .product-image { grid-column: 1; grid-row: 1; width: 58px; height: 58px; aspect-ratio: auto; margin: 0; border-radius: 8px; }
.product-view-list .product-info, .product-view-list-image .product-info { grid-row: 1; display: flex; align-items: baseline; gap: 9px; min-width: 0; overflow: hidden; padding: 0; white-space: nowrap; -webkit-mask-image: linear-gradient(90deg, #000 calc(100% - 42px), transparent); mask-image: linear-gradient(90deg, #000 calc(100% - 42px), transparent); }
.product-view-list .product-info { grid-column: 1; }
.product-view-list-image .product-info { grid-column: 2; }
.product-view-list .product-info li, .product-view-list-image .product-info li { flex: 0 0 auto; max-width: none; overflow: visible; white-space: nowrap; overflow-wrap: normal; }
.product-view-list .product-info li:not(.product-name)::before, .product-view-list-image .product-info li:not(.product-name)::before { content: "|"; margin-right: 9px; color: rgba(112,109,101,0.62); font-weight: 720; }
.product-view-list .product-info .product-name, .product-view-list-image .product-info .product-name { display: block; flex: 0 1 auto; overflow: hidden; font-size: 0.84rem; line-height: 1.2; white-space: nowrap; -webkit-line-clamp: initial; line-clamp: initial; }
.product-view-list .product-layman, .product-view-list .product-info li:has(.product-card-stats), .product-view-list-image .product-layman, .product-view-list-image .product-info li:has(.product-card-stats) { display: none; }
.product-view-list .product-card .product-card-price, .product-view-list-image .product-card .product-card-price { right: 64px; bottom: 7px; font-size: 0.72rem; }
.product-view-grid-4, .product-view-grid-5, .product-view-grid-6 { align-items: stretch; }
.product-view-grid-4 .product-card, .product-view-grid-5 .product-card, .product-view-grid-6 .product-card { align-self: stretch; align-content: stretch; grid-template-rows: auto minmax(0, 1fr); margin-top: 30px; }
.product-view-grid-4 .product-card-box, .product-view-grid-5 .product-card-box, .product-view-grid-6 .product-card-box { height: 100%; grid-template-rows: auto auto minmax(0, 1fr); }
.product-view-grid-4 .product-info, .product-view-grid-5 .product-info, .product-view-grid-6 .product-info { align-content: start; overflow: hidden; }
.product-view-grid-5 .product-info { min-height: 140px; max-height: 140px; }
.product-view-grid-4 .product-info { min-height: 150px; max-height: 150px; }
.product-view-grid-6 .product-info { min-height: 130px; max-height: 130px; }
.product-view-grid-4 .product-info .product-card-meta, .product-view-grid-6 .product-info .product-card-meta, .product-view-grid-4 .product-info .product-card-specs, .product-view-grid-6 .product-info .product-card-specs { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; }
.product-view-grid-4 .product-info .product-card-meta, .product-view-grid-6 .product-info .product-card-meta { -webkit-line-clamp: 1; line-clamp: 1; }
.product-view-grid-4 .product-info .product-card-specs, .product-view-grid-6 .product-info .product-card-specs { -webkit-line-clamp: 2; line-clamp: 2; }
.product-view-grid-6 .product-card { gap: 0; padding: 0; }
.product-view-grid-6 .product-card .product-card-metrics { gap: 0; min-height: 0; padding: 0; }
.product-view-grid-6 .product-card .product-compatibility-text-action { --compat-toggle-width: 26px; --compat-toggle-height: 15px; --compat-toggle-knob: 11px; --compat-toggle-travel: 11px; max-width: calc(100% - 56px); margin-left: 12px; gap: 4px; font-size: 0.66rem; }
.product-view-grid-6 .product-check-card-tools { gap: 5px; padding: 0 6px; }
.product-view-grid-6 .product-check-remove, .product-view-grid-6 .product-check-select-toggle { font-size: 0.66rem; }
.product-view-grid-6 .product-check-select-toggle { --compat-toggle-width: 26px; --compat-toggle-height: 15px; --compat-toggle-knob: 11px; --compat-toggle-travel: 11px; gap: 4px; }
.product-view-grid-6 .product-card .product-community-meta { width: 100%; max-width: none; min-height: 27px; padding: 0 34px; font-size: 0.64rem; }
.product-view-grid-6 .product-card .product-community-meta span + span::before { margin: 0 4px; }
.product-view-grid-4 .product-card .product-card-metrics .product-add-inventory-button, .product-view-grid-4 .product-card .product-card-metrics .product-add-inventory-status, .product-view-grid-6 .product-card .product-card-metrics .product-add-inventory-button, .product-view-grid-6 .product-card .product-card-metrics .product-add-inventory-status { top: -4px; right: -8px; width: 34px; height: 34px; min-height: 34px; flex-basis: 44px; transform: none; }
.product-view-grid-4 .product-card .product-card-metrics .product-card-like-button, .product-view-grid-6 .product-card .product-card-metrics .product-card-like-button { top: -4px; left: -8px; width: 34px; height: 34px; transform: none; }
.product-view-grid-4 .product-card .product-card-metrics .product-card-like-button svg, .product-view-grid-6 .product-card .product-card-metrics .product-card-like-button svg { width: 22px; height: 22px; }
.product-view-grid-6 .product-card .product-card-metrics .product-add-inventory-button svg, .product-view-grid-6 .product-card .product-card-metrics .product-add-inventory-status svg { width: 22px; height: 22px; }
.product-view-grid-4 .product-card .product-community-meta { min-height: 27px; padding-right: 34px; padding-left: 34px; }
.product-view-grid-6 .product-image { margin: 0; }
.product-view-grid-6 .product-info { padding: 12px 14px 40px; }
.product-view-grid-6 .product-info .product-name { font-size: 0.82rem; -webkit-line-clamp: 2; line-clamp: 2; }
.product-view-grid-4 .product-info:has(.product-private-policy-note), .product-view-grid-6 .product-info:has(.product-private-policy-note) { min-height: 164px; max-height: 164px; }
.product-view-grid-4 .product-info:has(.product-private-policy-note) .product-name, .product-view-grid-6 .product-info:has(.product-private-policy-note) .product-name { min-height: 2.4em; }
.product-view-grid-4 .product-private-policy-note, .product-view-grid-6 .product-private-policy-note { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; }
.product-view-grid-6 .product-card .product-card-price { right: 12px; bottom: 10px; font-size: 0.74rem; }
.product-view-grid-6 .product-card .product-card-price.has-region-notice { left: 12px; }
.product-view-grid-6 .product-layman, .product-view-grid-6 .product-info li:has(.product-card-stats) { display: none; }
.product-view-grid-8 .product-card { gap: 7px; padding: 10px; }
.product-view-grid-8 .product-card .product-card-metrics { min-height: 30px; padding: 0 3px; gap: 1px; }
.product-view-grid-8 .product-action-counter { width: 25px; height: 25px; }
.product-view-grid-8 .product-action-counter svg { width: 25px; height: 25px; }
.product-view-grid-8 .product-action-button { width: 24px; height: 24px; min-height: 24px; flex-basis: 24px; }
.product-view-grid-8 .product-action-button svg { width: 15px; height: 15px; }
.product-view-grid-8 .product-image { margin: -10px -10px 0; }
.product-view-grid-8 .product-info { gap: 4px; }
.product-view-grid-8 .product-info .product-name { font-size: 0.78rem; line-height: 1.17; -webkit-line-clamp: 2; line-clamp: 2; }
.product-view-grid-8 .product-info .product-card-meta { font-size: 0.66rem; }
.product-view-grid-8 .product-info .product-card-specs { font-size: 0.64rem; line-height: 1.2; }
.product-view-grid-8 .product-layman, .product-view-grid-8 .product-category, .product-view-grid-8 .product-info li:has(.product-card-stats) { display: none; }
.price-compare, .product-edit-link { min-height: 36px; display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: 8px; background: var(--action); color: #fff; cursor: pointer; font: inherit; font-size: 0.86rem; font-weight: 750; text-align: center; text-decoration: none; }
.product-edit-link { background: var(--action-weak); color: var(--ink); }
.product-muted, .product-muted-note { color: var(--muted); font-size: 0.86rem; }
.product-wavers { color: var(--ink); font-weight: 760; }
.product-manufacturer-link { display: inline-flex; align-items: center; gap: 5px; color: var(--action); font-weight: 760; text-decoration: none; }
.product-manufacturer-link:hover { text-decoration: underline; }
.product-card-actions { margin-top: 4px; }
.product-add-inventory-button:disabled { opacity: 0.62; cursor: progress; }
.product-like-inline { min-height: 38px; display: inline-flex; align-items: center; gap: 8px; padding: 0 13px; border: 1px solid rgba(var(--action-rgb),0.18); border-radius: 8px; background: transparent; color: var(--action); cursor: pointer; font: inherit; font-size: 0.9rem; font-weight: 800; transition: background 120ms ease, color 120ms ease, opacity 120ms ease; }
.product-like-inline[aria-pressed="true"] { background: var(--action); color: #fff; }
.product-like-inline:disabled { opacity: 0.5; cursor: progress; }
.product-detail-actions .submit-button, .product-detail-actions .delete-button, .product-detail-actions .ghost-button, .product-detail-actions .product-like-inline { min-height: 38px; border-radius: 8px; padding: 0 14px; box-shadow: none; font-size: 0.9rem; }
.product-detail-actions .ghost-button { background: transparent; color: var(--muted); border: 1px solid transparent; }
.product-chart-hint { display: grid; grid-template-columns: 42px 1fr; gap: 8px; align-items: center; }
.product-chart-hint span, .mini-chart-placeholder { min-height: 22px; border-radius: 0; background: linear-gradient(90deg, rgba(32,32,29,0.34) 0 1px, transparent 1px), linear-gradient(0deg, rgba(32,32,29,0.28) 0 1px, transparent 1px); background-size: 100% 100%; background-position: left bottom; position: relative; overflow: hidden; }
.product-chart-hint span::after, .mini-chart-placeholder::after { content: ""; position: absolute; left: 5px; right: 4px; top: 7px; height: 10px; border-top: 2px solid rgba(var(--action-rgb),0.58); border-radius: 52% 44% 46% 35%; transform: rotate(-8deg); }
.product-chart-hint span::before, .mini-chart-placeholder::before { content: ""; position: absolute; left: 18px; right: 20px; top: 9px; height: 8px; border-top: 2px solid rgba(var(--action-rgb),0.58); border-radius: 46% 38% 50% 42%; transform: rotate(7deg); }
.product-chart-hint-price span::after, .product-chart-hint-price span::before, .mini-chart-placeholder-price::after, .mini-chart-placeholder-price::before { border-color: rgba(var(--action-rgb),0.50); }
.product-card-stats { display: grid; gap: 7px; margin-top: 2px; }
.product-card-stat { display: grid; grid-template-columns: 54px minmax(0, 1fr) auto; gap: 8px; align-items: center; min-width: 0; }
.product-card-stat span { color: var(--muted); font-size: 0.72rem; font-weight: 780; }
.product-card-stat small { color: var(--muted); font-size: 0.72rem; white-space: nowrap; }
.stat-micro-bars { position: relative; min-height: 18px; border-bottom: 1px solid rgba(32,32,29,0.24); background: linear-gradient(90deg, rgba(32,32,29,0.12) 0 1px, transparent 1px); background-size: 25% 100%; overflow: hidden; }
.stat-micro-bars i, .stat-micro-bars b { position: absolute; left: 0; height: 6px; border-radius: 2px; }
.stat-micro-bars i { bottom: 3px; background: rgba(var(--action-rgb),0.72); }
.stat-micro-bars b { top: 3px; background: rgba(254,212,121,0.86); }
.stat-micro-stack { display: flex; align-items: end; gap: 4px; min-height: 24px; padding: 2px 0 0; border-bottom: 1px solid rgba(32,32,29,0.24); }
.stat-micro-stack i { width: 8px; min-height: 1px; border-radius: 2px 2px 0 0; background: rgba(var(--action-rgb),0.68); }
.stat-micro-stack i:nth-child(2) { background: rgba(254,212,121,0.86); }
.stat-micro-stack i:nth-child(3) { background: rgba(92,150,104,0.72); }
.stat-sparkline { width: 100%; height: 24px; overflow: visible; }
.stat-sparkline .chart-axis, .stat-sparkline .chart-line { fill: none; stroke-linecap: round; stroke-linejoin: round; }
.stat-sparkline .chart-axis { stroke: rgba(32,32,29,0.22); stroke-width: 1.2; }
.stat-sparkline .chart-line { stroke: rgba(var(--action-rgb),0.72); stroke-width: 4; }
.price-history-chart { width: 100%; min-height: 74px; margin: 8px 0; overflow: visible; }
.price-history-chart .chart-axis { fill: none; stroke: rgba(32,32,29,0.28); stroke-width: 1.2; stroke-linecap: round; stroke-linejoin: round; }
.price-history-chart .chart-line { fill: none; stroke: rgba(var(--action-rgb),0.72); stroke-width: 2.3; stroke-linecap: round; stroke-linejoin: round; }
html[data-design="blue"] .price-history-chart .chart-axis { stroke: rgba(237,247,255,0.28); }
html[data-design="blue"] .stat-sparkline .chart-axis { stroke: rgba(237,247,255,0.24); }
html[data-design="blue"] .stat-micro-bars, html[data-design="blue"] .stat-micro-stack { border-bottom-color: rgba(237,247,255,0.24); }
.empty-state, .component-error { padding: 24px; border-radius: 8px; background: var(--glass); color: var(--muted); box-shadow: var(--shadow); backdrop-filter: blur(12px); }
.form-card { max-width: 760px; margin: 28px auto 0; padding: 30px; border-radius: 8px; }
.page-block > .form-card { width: 100%; max-width: none; margin: 0; }
.simple-panel { width: 100%; margin: 0; padding: 30px; border-radius: 8px; }
.quick-import-shell { display: grid; gap: 10px; }
.quick-import-model-form { display: grid; gap: 14px; }
.quick-import-toggle { justify-self: start; min-height: 30px; display: inline-flex; align-items: center; gap: 8px; border: 0; padding: 0; background: transparent; color: var(--action); cursor: pointer; font: inherit; font-size: 0.94rem; font-weight: 820; text-decoration: none; }
.quick-import-toggle:hover { color: var(--ink); }
.quick-import-toggle:disabled { color: var(--muted); cursor: wait; opacity: 0.58; }
.quick-import-toggle [aria-hidden="true"] { font-size: 1.04rem; line-height: 1; }
.quick-import { padding: 18px; background: var(--glass); border: 1px solid var(--glass-border); box-shadow: var(--glass-shadow); backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.quick-import-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 0.82fr); gap: 24px; align-items: center; margin-bottom: 16px; }
.quick-import-head > div { display: grid; gap: 4px; min-width: 0; }
.quick-import-head > div > span { color: var(--action); font-size: 0.68rem; font-weight: 880; letter-spacing: 0.12em; }
.quick-import .quick-import-head h2 { font-size: clamp(1.1rem, 1.8vw, 1.35rem); }
.quick-import-head p { margin: 0; font-size: 0.88rem; line-height: 1.4; }
.quick-import-privacy { display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 10px; align-items: center; min-width: 0; padding: 10px 12px; border: 1px solid rgba(var(--action-rgb),0.14); border-radius: 10px; background: rgba(var(--action-rgb),0.06); }
.quick-import-privacy svg { width: 22px; height: 22px; margin: auto; fill: none; stroke: var(--action); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.quick-import-privacy p { margin: 0; color: var(--muted); font-size: 0.76rem; font-weight: 680; line-height: 1.42; }
.quick-import-form { display: grid; grid-template-columns: repeat(3, minmax(220px, 1fr)); align-items: stretch; gap: 12px; }
.quick-import-source-column { display: grid; align-content: start; gap: 10px; min-width: 0; }
.quick-import-url { position: relative; display: grid; gap: 6px; min-width: 0; }
.quick-import-url span { color: var(--muted); font-size: 0.78rem; font-weight: 820; }
.quick-import-url input { width: 100%; min-width: 0; height: 38px; }
.quick-import-url small { color: var(--muted); font-size: 0.7rem; font-weight: 650; line-height: 1.3; }
.quick-import-context { position: relative; display: grid; align-content: start; gap: 10px; min-width: 0; }
.quick-import-actions { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: 8px 12px; min-width: 240px; }
.quick-import-actions small { color: var(--muted); font-size: 0.74rem; font-weight: 720; line-height: 1.35; text-align: right; }
.quick-import-importbar { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; align-items: stretch; min-width: 0; margin-top: 2px; }
.quick-import-method { min-width: 0; min-height: 162px; padding: 16px; border: 1px dashed rgba(var(--action-rgb),0.30); border-radius: 10px; background: rgba(255,255,255,0.26); box-shadow: none; transition: background 120ms ease, border-color 120ms ease, color 120ms ease; }
.quick-import-importbar > .quick-import-actions { grid-column: 1 / -1; }
.quick-import-footer { margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--glass-line); }
.quick-import h2 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: 1.1rem; line-height: 1.1; }
.quick-import p { margin: 4px 0 0; color: var(--muted); }
.quick-import-file { position: relative; display: grid; align-content: center; justify-items: center; gap: 6px; min-width: 0; min-height: 162px; padding: 14px; color: var(--muted); cursor: pointer; font-size: 0.94rem; font-weight: 760; text-align: center; }
.quick-import-file:hover span { color: var(--ink); }
.quick-import-zone { position: relative; display: grid; min-width: 0; }
.quick-import-choice { border-radius: 10px; overflow: hidden; background: rgba(255,255,255,0.26); border: 1px dashed rgba(var(--action-rgb),0.30); box-shadow: none; transition: background 120ms ease, border-color 120ms ease, color 120ms ease, transform 120ms ease; }
.quick-import-zone.is-active .quick-import-choice,
.quick-import-method.is-active,
.quick-import-email.has-arrived { border: 2px solid var(--action); background: rgba(var(--action-rgb),0.07); box-shadow: none; }
.quick-import-choice > svg { width: 25px; height: 25px; fill: none; stroke: var(--action); stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.quick-import-paste, .quick-import-drop { position: relative; display: grid; place-items: center; align-content: center; justify-items: center; gap: 7px; min-height: 162px; padding: 16px; color: var(--muted); font-size: 0.9rem; font-weight: 760; text-align: center; cursor: default; caret-color: transparent; outline: none; }
.quick-import-paste:hover, .quick-import-paste:focus-visible, .quick-import-drop:hover, .quick-import-drop:focus-visible, .quick-import-drop.is-dragging { background: rgba(255,255,255,0.42); border-color: rgba(var(--action-rgb),0.54); color: var(--ink); outline: none; }
.quick-import-file:hover, .quick-import-file:focus-within { background: rgba(255,255,255,0.42); border-color: rgba(var(--action-rgb),0.54); }
.quick-import-file input { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.quick-import-file span, .quick-import-paste span, .quick-import-drop span { color: var(--action); font-family: "Manrope", system-ui, sans-serif; font-size: 1rem; font-weight: 780; line-height: 1.2; }
.quick-import-paste span, .quick-import-drop span { color: var(--ink); font-size: 0.96rem; }
.quick-import-file small, .quick-import-paste small, .quick-import-drop small { max-width: 100%; color: var(--muted); font-size: 0.76rem; font-weight: 680; line-height: 1.35; overflow-wrap: anywhere; }
.quick-import-mobile-help { display: none; }
.quick-import-touch-help { display: none; }
.quick-import-clear { width: fit-content; min-height: 24px; border: 1px solid rgba(var(--action-rgb),0.18); border-radius: 8px; padding: 0 8px; background: rgba(255,255,255,0.54); color: var(--action); cursor: pointer; font: inherit; font-size: 0.72rem; font-weight: 820; box-shadow: 0 6px 16px rgba(65,82,100,0.06); }
.quick-import-clear:hover { background: rgba(var(--action-rgb),0.12); }
.quick-import-zone > .quick-import-clear { position: absolute; top: 8px; right: 8px; z-index: 2; }
.quick-import-paste img { width: 100%; max-height: 118px; object-fit: contain; border-radius: 8px; background: rgba(255,255,255,0.36); }
.quick-import-paste.has-preview small { display: none; }
.quick-import-text { width: 100%; min-height: 50px; border: 1px solid rgba(255,255,255,0.36); outline: 0; border-radius: 8px; padding: 0 16px; background: rgba(255,255,255,0.34); color: var(--ink); font: inherit; box-shadow: inset 0 1px 0 rgba(255,255,255,0.42); }
.quick-import-text:focus { border-color: rgba(var(--action-rgb),0.34); background: rgba(255,255,255,0.50); }
.quick-import-actions .submit-button { min-height: 40px; display: inline-flex; align-items: center; justify-content: center; border-radius: 8px; padding: 0 18px; text-decoration: none; white-space: nowrap; }
.quick-import-manual { display: inline-flex; align-items: center; min-height: 28px; color: var(--action); font-size: 0.9rem; font-weight: 780; text-decoration: none; }
.quick-import-manual:hover { color: var(--ink); text-decoration: underline; text-underline-offset: 3px; }
.quick-import-actions .submit-button { padding: 0 18px; box-shadow: 0 12px 28px rgba(var(--action-rgb),0.18), inset 0 1px 0 rgba(255,255,255,0.28); }
.quick-import-progress {
  grid-column: 1 / -1;
  position: relative;
  height: 5px;
  margin-top: 2px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(var(--action-rgb),0.10);
  box-shadow: inset 0 1px 1px rgba(32,32,29,0.06);
}
.quick-import-progress::after {
  content: "";
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(
    110deg,
    rgba(var(--action-rgb),0.16) 0 10px,
    rgba(var(--action-rgb),0.68) 10px 20px
  );
  background-size: 32px 100%;
  animation: quick-import-progress-stripes 720ms linear infinite;
}
@keyframes quick-import-progress-stripes {
  to { background-position-x: 32px; }
}
@media (prefers-reduced-motion: reduce) {
  .quick-import-progress::after {
    animation: none;
    background: linear-gradient(90deg, rgba(var(--action-rgb),0.22), rgba(var(--action-rgb),0.62));
  }
}
.quick-import-status { grid-column: 1 / -1; min-height: 2.6em; margin: 0; color: var(--muted); font-size: 0.8rem; font-weight: 680; line-height: 1.3; text-align: right; }
.quick-import-cost-estimate { grid-column: 1 / -1; min-height: 1.2em; margin: -2px 0 0; color: var(--muted); font-size: 0.82rem; font-weight: 740; }
.quick-import-cost-estimate[data-tone="ready"] { color: #2b7d53; }
.quick-import-cost-estimate[data-tone="empty"] { color: var(--muted); }
.quick-import-status[data-tone="busy"] { color: var(--action); }
.quick-import-status[data-tone="busy"]::before { content: ""; display: inline-block; width: 0.52em; height: 0.52em; margin-right: 0.48em; border-radius: 50%; background: currentColor; vertical-align: 0.08em; animation: quick-import-status-pulse 1.15s ease-in-out infinite; }
.quick-import-status[data-tone="success"] { color: #32995c; }
.quick-import-status[data-tone="error"] { color: #d84e70; }
@keyframes quick-import-status-pulse { 50% { opacity: 0.28; transform: scale(0.72); } }
@media (prefers-reduced-motion: reduce) { .quick-import-status[data-tone="busy"]::before { animation: none; } }
.quick-import.is-importing { border-color: rgba(var(--action-rgb),0.30); box-shadow: var(--glass-shadow), 0 0 32px rgba(var(--action-rgb),0.14); }
.quick-import.is-importing { cursor: wait; }
.quick-import.is-importing .quick-import-choice,
.quick-import.is-importing .quick-import-url,
.quick-import.is-importing .quick-import-email,
.quick-import.is-importing .quick-import-footer { opacity: 0.52; }
.quick-import.is-importing [aria-disabled="true"] { pointer-events: none; }
.quick-import.is-importing .quick-import-actions > :not(.quick-import-progress):not(.quick-import-status) { opacity: 0.52; }
.quick-import-email { display: grid; gap: 7px; min-width: 0; color: var(--muted); font-size: 0.86rem; font-weight: 760; }
.quick-import-email-head { display: flex; align-items: center; gap: 8px; min-width: 0; flex-wrap: wrap; }
.quick-import-email-head > span { min-width: 0; color: var(--action); font-size: 0.94rem; font-weight: 780; overflow-wrap: anywhere; }
.quick-import-email code { padding: 0; background: transparent; color: var(--action); font-family: "Noto Sans", system-ui, sans-serif; font-size: inherit; word-break: break-word; }
.quick-import-copy { width: 24px; min-width: 24px; height: 24px; display: inline-grid; place-items: center; border: 1px solid rgba(var(--action-rgb),0.18); border-radius: 8px; padding: 0; background: rgba(255,255,255,0.38); color: var(--action); cursor: pointer; }
.quick-import-copy svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.quick-import-copy:hover { background: rgba(var(--action-rgb),0.12); }
.quick-import-email [data-email-import-pending] { display: grid; gap: 4px; min-width: 0; }
.quick-import-email-empty { margin: 0; color: var(--muted); font-size: 0.8rem; }
.quick-import-email-arrived { margin: 0 0 4px; color: var(--action); font-size: 0.8rem; font-weight: 800; line-height: 1.4; }
.quick-import-email-job { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 6px; align-items: center; min-width: 0; padding: 2px 0; border-radius: 8px; }
.quick-import-email-job.is-active { color: var(--action); }
.quick-import-email-job label { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 8px; min-width: 0; color: inherit; cursor: pointer; }
.quick-import-email-job input { width: 16px; height: 16px; margin: 0; accent-color: var(--action); box-shadow: none; }
.quick-import-email-job span { display: grid; min-width: 0; gap: 1px; }
.quick-import-email-job strong { min-width: 0; color: inherit; font-size: 0.88rem; font-weight: 760; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.quick-import-email-job small { min-width: 0; color: var(--muted); font-size: 0.76rem; font-weight: 680; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.quick-import-email-job .ghost-button { min-height: 28px; padding: 0 8px; border-radius: 8px; font-size: 0.72rem; }
.quick-import-email-files { grid-column: 1 / -1; min-width: 0; display: grid; gap: 6px; margin: 2px 0 5px 24px; padding: 9px; border: 1px solid var(--glass-line); border-radius: 8px; background: rgba(255,255,255,0.24); }
.quick-import-email-files .quick-import-email-files-title { color: var(--ink); font-size: 0.76rem; font-weight: 840; white-space: normal; }
.quick-import-email-files ul { display: grid; gap: 6px; margin: 0; padding: 0; list-style: none; }
.quick-import-email-file { min-width: 0; display: grid; grid-template-columns: minmax(0, 1fr); gap: 2px; padding: 7px 8px; border-radius: 7px; background: rgba(255,255,255,0.32); }
.quick-import-email-file.is-rejected { background: rgba(231,33,102,0.07); }
.quick-import-email-file.is-skipped { gap: 4px; border: 1px solid rgba(var(--action-rgb),0.14); background: rgba(var(--action-rgb),0.06); }
.quick-import-email-file-head { grid-column: 1 / -1; min-width: 0; display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.quick-import-email-file-head span { min-width: 0; display: block; color: var(--ink); font-size: 0.78rem; font-weight: 800; overflow-wrap: anywhere; }
.quick-import-email-file-head b { flex: 0 0 auto; padding: 2px 6px; border-radius: 999px; background: rgba(50,153,92,0.13); color: #287a4b; font-size: 0.66rem; font-weight: 860; }
.quick-import-email-file.is-rejected .quick-import-email-file-head b { background: rgba(231,33,102,0.12); color: var(--brand-magenta); }
.quick-import-email-file.is-skipped .quick-import-email-file-head b { background: rgba(var(--action-rgb),0.11); color: var(--action); }
.quick-import-email-file small { min-width: 0; overflow: visible; text-overflow: clip; white-space: normal; overflow-wrap: anywhere; }
.quick-import-email-file.is-skipped small { color: var(--muted); line-height: 1.4; }
.quick-import-email-file .quick-import-email-file-reason { color: var(--brand-magenta); }
@media (max-width: 700px) { .quick-import-email-files { margin-left: 0; } }
.quick-import-overlay { position: fixed; inset: 0; z-index: 80; display: grid; place-items: center; padding: 20px; background: rgba(31,35,38,0.34); backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); }
.quick-import-dialog { width: min(420px, 100%); display: grid; gap: 14px; padding: 18px; border-radius: 8px; background: var(--glass-strong); border: 1px solid var(--glass-border); box-shadow: var(--glass-shadow); color: var(--ink); backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.quick-import-dialog p { margin: 0; color: var(--muted); line-height: 1.45; }
.quick-import-dialog label { display: grid; gap: 5px; color: var(--muted); font-size: 0.82rem; font-weight: 760; }
.quick-import-dialog input { height: 40px; background: var(--glass-child); }
.quick-import-dialog div { display: flex; justify-content: flex-end; gap: 8px; }
.quick-import-review-dialog {
  width: min(820px, 100%);
  max-height: calc(100vh - 40px);
  overflow: auto;
  align-content: start;
  gap: 11px;
  padding: 20px;
  border-color: rgba(255,255,255,0.72);
  border-radius: 14px;
  background: rgba(250,248,243,0.96);
  box-shadow: 0 24px 70px rgba(24,29,33,0.28);
}
.quick-import-review-head { display: flex; align-items: start; justify-content: space-between; gap: 14px; }
.quick-import-review-head div { display: grid !important; justify-content: stretch !important; gap: 2px !important; }
.quick-import-review-head span { color: var(--action); font-size: 0.68rem; font-weight: 880; letter-spacing: 0.11em; text-transform: uppercase; }
.quick-import-review-head h2 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: 1.25rem; line-height: 1.12; }
.quick-import-review-close {
  width: 34px;
  height: 34px;
  flex: 0 0 auto;
  display: grid;
  place-items: center;
  border: 1px solid var(--glass-line);
  border-radius: 50%;
  background: rgba(255,255,255,0.56);
  color: var(--muted);
  font: inherit;
  font-size: 1.32rem;
  line-height: 1;
  cursor: pointer;
}
.quick-import-review-close:hover { border-color: rgba(var(--action-rgb),0.26); background: #fff; color: var(--ink); }
.quick-import-review-warning {
  position: relative;
  margin: 0;
  padding: 8px 11px 8px 34px;
  border: 1px solid rgba(196,147,42,0.18);
  border-radius: 9px;
  background: rgba(254,212,121,0.17);
  color: #745916 !important;
  font-size: 0.78rem;
  line-height: 1.38;
}
.quick-import-review-warning::before {
  content: "!";
  position: absolute;
  left: 11px;
  top: 50%;
  width: 16px;
  height: 16px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(151,106,10,0.14);
  color: #745916;
  font-size: 0.68rem;
  font-weight: 900;
  transform: translateY(-50%);
}
.quick-import-review-progress {
  position: relative;
  margin: 0;
  padding: 8px 11px 8px 34px;
  border: 1px solid rgba(var(--action-rgb),0.13);
  border-radius: 9px;
  background: rgba(var(--action-rgb),0.07);
  color: var(--muted) !important;
  font-size: 0.78rem;
  font-weight: 750;
  line-height: 1.38;
}
.quick-import-review-progress::before {
  content: "";
  position: absolute;
  left: 13px;
  top: 50%;
  width: 9px;
  height: 9px;
  border: 2px solid currentColor;
  border-radius: 50%;
  transform: translateY(-50%);
}
.quick-import-review-progress[data-tone="busy"] { color: var(--action) !important; }
.quick-import-review-progress[data-tone="ready"] { color: #2b7d53 !important; background: rgba(46,160,91,0.09); }
.quick-import-review-progress[data-tone="error"] { color: #a33d3d !important; background: rgba(210,70,70,0.11); }
.quick-import-review-table { display: grid !important; justify-content: stretch !important; gap: 6px !important; max-height: min(420px, 48vh); overflow: auto; padding-right: 2px; }
.quick-import-review-row { display: grid !important; grid-template-columns: minmax(220px, 1.25fr) minmax(120px, 0.62fr) minmax(76px, 0.34fr) minmax(96px, 0.42fr) minmax(126px, 0.48fr); justify-content: stretch !important; gap: 6px 12px !important; align-items: center; padding: 10px 12px; border-radius: 8px; background: rgba(255,255,255,0.30); border: 1px solid rgba(255,255,255,0.32); }
.quick-import-review-row-head { min-height: 30px; padding-top: 6px; padding-bottom: 6px; background: rgba(var(--action-rgb),0.08); color: var(--muted); font-size: 0.76rem; font-weight: 860; text-transform: uppercase; }
.quick-import-review-row strong { min-width: 0; font-family: "Manrope", system-ui, sans-serif; font-size: 0.92rem; line-height: 1.18; }
.quick-import-review-row span { min-width: 0; color: var(--muted); font-size: 0.84rem; word-break: break-word; }
.quick-import-review-row small { grid-column: 1 / -1; color: #2b7d53; font-size: 0.78rem; font-weight: 760; }
.quick-import-review-row.has-inventory-match { border-color: rgba(46,160,91,0.28); background: rgba(46,160,91,0.09); }
.quick-import-review-row.is-reviewing { border-color: rgba(var(--action-rgb),0.38); background: rgba(var(--action-rgb),0.08); }
.quick-import-review-status { justify-self: start; display: inline-flex; align-items: center; min-height: 28px; max-width: 100%; padding: 4px 8px; border-radius: 8px; background: rgba(255,255,255,0.54); color: var(--text) !important; font-weight: 820; }
.quick-import-review-row[data-catalog-status="ai_catalog_candidate"] .quick-import-review-status,
.quick-import-review-row[data-catalog-status="linked_existing_catalog"] .quick-import-review-status { color: #2b7d53 !important; background: rgba(46,160,91,0.12); }
.quick-import-review-row[data-catalog-status="private_only"] .quick-import-review-status { color: #826317 !important; background: rgba(254,212,121,0.18); }
.quick-import-review-row[data-catalog-status="blocked"] .quick-import-review-status { color: #a33d3d !important; background: rgba(210,70,70,0.12); }
.quick-import-review-dialog.is-single-product .quick-import-review-table { max-height: none; overflow: visible; padding: 0; }
.quick-import-review-dialog.is-single-product .quick-import-review-row-head { display: none !important; }
.quick-import-review-dialog.is-single-product .quick-import-review-row:not(.quick-import-review-row-head) {
  grid-template-columns: minmax(0, 1fr) auto auto auto;
  gap: 7px 14px !important;
  padding: 13px 14px;
  border-color: rgba(var(--action-rgb),0.13);
  border-radius: 11px;
  background: rgba(255,255,255,0.60);
}
.quick-import-review-dialog.is-single-product .quick-import-review-row strong {
  grid-column: 1 / 4;
  font-size: 1rem;
}
.quick-import-review-dialog.is-single-product .quick-import-review-status {
  grid-column: 4;
  grid-row: 1;
  justify-self: end;
  min-height: 25px;
  padding: 3px 8px;
  border-radius: 999px;
  font-size: 0.72rem;
}
.quick-import-review-dialog.is-single-product .quick-import-review-row span[data-label]:not(.quick-import-review-status) {
  color: var(--muted);
  font-size: 0.76rem;
}
.quick-import-review-dialog.is-single-product .quick-import-review-row span[data-label]:not(.quick-import-review-status)::before {
  content: attr(data-label) ": ";
  color: var(--ink);
  font-weight: 790;
}
.quick-import-review-dialog.is-single-product .quick-import-review-row small { display: none; }
.quick-import-review-footer {
  display: grid !important;
  grid-template-columns: minmax(260px, 1fr) auto;
  align-items: end;
  justify-content: stretch !important;
  gap: 14px !important;
  padding-top: 11px;
  border-top: 1px solid var(--glass-line);
}
.quick-import-review-source { position: relative; display: grid !important; justify-content: stretch !important; gap: 6px !important; padding-top: 2px; }
.quick-import-review-source-fields { display: grid !important; grid-template-columns: minmax(180px, 1fr) minmax(180px, 1fr); justify-content: stretch !important; gap: 10px !important; }
.quick-import-review-source .quick-import-review-source-fields label { max-width: none; }
.quick-import-review-source label { max-width: 420px; }
.quick-import-review-source input { min-width: 0; }
.quick-import-review-source .merchant-suggestions { position: static; justify-content: flex-start; }
.quick-import-review-actions { display: flex !important; justify-content: flex-end !important; align-items: center; gap: 8px !important; }
.quick-import-review-actions .ghost-button { border-color: transparent; background: transparent; box-shadow: none; color: var(--muted); }
.quick-import-review-actions .ghost-button:hover { background: rgba(255,255,255,0.62); color: var(--ink); }
.quick-import-email-manual-list { display: grid !important; justify-content: stretch !important; gap: 8px !important; max-height: min(420px, 46vh); overflow: auto; padding-right: 2px; }
.quick-import-email-manual-block { display: grid !important; grid-template-columns: auto minmax(0, 1fr); align-items: start; gap: 10px !important; padding: 10px 12px; border-radius: 8px; border: 1px solid rgba(255,255,255,0.32); background: rgba(255,255,255,0.30); cursor: pointer; }
.quick-import-email-manual-block input { width: 18px; height: 18px; margin: 2px 0 0; accent-color: var(--action); box-shadow: none; }
.quick-import-email-manual-block span { display: grid; min-width: 0; gap: 4px; }
.quick-import-email-manual-block strong { color: var(--ink); font-size: 0.86rem; font-weight: 840; }
.quick-import-email-manual-block small { min-width: 0; color: var(--muted); font-family: "Noto Sans", system-ui, sans-serif; font-size: 0.78rem; line-height: 1.45; white-space: pre-wrap; overflow-wrap: anywhere; }
.inventory-import-dialog { width: min(920px, 100%); max-height: calc(100vh - 40px); overflow: auto; align-content: start; }
.inventory-import-head { display: flex; align-items: start; justify-content: space-between; gap: 14px; }
.inventory-import-head span { color: #ff2f7d; font-size: 0.78rem; font-weight: 860; letter-spacing: 0.08em; text-transform: uppercase; }
.inventory-import-head h2 { margin: 4px 0 0; font-family: "Manrope", system-ui, sans-serif; font-size: 1.35rem; line-height: 1.08; }
.inventory-import-stats { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px !important; }
.inventory-import-stats div { display: grid !important; justify-content: stretch !important; gap: 3px !important; min-width: 0; padding: 10px; border-radius: 8px; background: rgba(250,246,237,0.52); border: 1px solid var(--glass-border); }
.inventory-import-stats span, .inventory-import-row span, .inventory-import-row small { color: var(--muted); font-size: 0.82rem; }
.inventory-import-stats strong { font-family: "Manrope", system-ui, sans-serif; font-size: 1.15rem; }
.inventory-import-mapping { display: flex !important; justify-content: flex-start !important; gap: 7px !important; flex-wrap: wrap; }
.inventory-import-mapping span { display: inline-flex; align-items: center; gap: 5px; min-height: 28px; padding: 0 9px; border-radius: 999px; background: rgba(72,139,211,0.12); color: var(--muted); font-size: 0.76rem; font-weight: 780; }
.inventory-import-mapping b { color: var(--link); font-weight: 860; }
.inventory-import-warning { margin: 0; padding: 10px 12px; border-radius: 8px; background: rgba(255,217,106,0.16); color: #826317 !important; font-size: 0.86rem; }
.inventory-import-table { display: grid !important; justify-content: stretch !important; gap: 7px !important; max-height: min(360px, 42vh); overflow: auto; padding-right: 2px; }
.inventory-import-row { display: grid; grid-template-columns: minmax(220px, 1fr) minmax(160px, 0.9fr); gap: 6px 12px; align-items: center; padding: 10px 12px; border-radius: 8px; background: rgba(255,255,255,0.28); border: 1px solid rgba(255,255,255,0.30); }
.inventory-import-row strong { min-width: 0; font-family: "Manrope", system-ui, sans-serif; font-size: 0.94rem; line-height: 1.18; }
.inventory-import-row span { min-width: 0; word-break: break-word; }
.inventory-import-row em { width: fit-content; min-height: 22px; display: inline-flex; align-items: center; padding: 0 8px; border-radius: 999px; background: rgba(var(--action-rgb),0.12); color: var(--action); font-size: 0.76rem; font-style: normal; font-weight: 840; }
.inventory-import-row em[data-intake-status="linked_existing_catalog"] { background: rgba(46,160,91,0.14); color: #25834b; }
.inventory-import-row em[data-intake-status="needs_ai_review"] { background: rgba(254,212,121,0.34); color: #8a6404; }
.inventory-import-row em[data-intake-status="private_only"] { background: rgba(15,23,42,0.08); color: var(--muted); }
.inventory-import-row em[data-intake-status="blocked"] { background: rgba(196,72,78,0.12); color: #9a3a3e; }
.inventory-import-row small { grid-column: 1 / -1; color: #9f5d54; }
.inventory-import-row.is-blocked { border-color: rgba(255,111,145,0.34); background: rgba(255,111,145,0.10); }
.inventory-import-ai-status { margin: 0; padding: 10px 12px; border-radius: 8px; background: rgba(var(--action-rgb),0.10); color: var(--action); font-weight: 760; }
.inventory-import-ai-status[data-tone="success"] { background: rgba(46,160,91,0.12); color: #25834b; }
.inventory-import-ai-status[data-tone="error"] { background: rgba(196,72,78,0.12); color: #9a3a3e; }
.inventory-import-actions { display: flex !important; justify-content: flex-end !important; gap: 8px !important; padding-top: 4px; }
.polygon-overlay { position: fixed; inset: 0; z-index: 120; display: grid; place-items: center; padding: 20px; background: rgba(32,32,29,0.28); backdrop-filter: blur(2px); -webkit-backdrop-filter: blur(2px); }
.polygon-modal { width: min(520px, 100%); max-height: calc(100vh - 40px); overflow: auto; border-radius: 8px; border: 1px solid var(--glass-border); background: var(--glass); box-shadow: var(--glass-shadow); backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.polygon-content { display: grid; gap: 12px; padding: 22px; }
.polygon-content h3, .polygon-content p { margin: 0; }
.project-confirm-feedback { display: grid; gap: 8px; padding: 12px; border-radius: 8px; background: rgba(196,72,78,0.10); }
.project-confirm-feedback[hidden] { display: none; }
.project-confirm-error { color: #9a3a3e; font-weight: 780; }
.project-confirm-support-note, .project-confirm-support-status { color: var(--muted); font-size: 0.78rem; line-height: 1.45; }
.modal-actions { display: flex; justify-content: flex-end; gap: 10px; flex-wrap: wrap; margin-top: 4px; }
.product-create-modal { width: min(880px, calc(100% - 32px)); max-height: calc(100vh - 48px); overflow: auto; }
.product-create-modal .polygon-content { padding: 0; }
.product-form-modal { max-width: none; margin: 0; padding: 24px; box-shadow: none; background: transparent; }
.product-form-modal h1 { font-size: 0.725rem; }
.account-profile { display: grid; gap: 18px; margin: 10px 0 48px; }
.account-tabs { display: flex; flex-wrap: wrap; gap: 8px; }
.account-tab { min-height: 36px; display: inline-flex; align-items: center; border-radius: 8px; padding: 0 11px; background: var(--glass-child); color: var(--muted); font-weight: 790; text-decoration: none; }
.account-tab.is-active, .account-tab:hover { background: var(--action); color: #fff; }
.account-tab-support { box-shadow: inset 0 0 0 1px rgba(var(--action-rgb),0.22); }
.account-profile-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.account-two { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.account-panel { padding: 18px; border-radius: 8px; background: var(--glass); border: 1px solid var(--glass-border); box-shadow: var(--glass-shadow); backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.account-panel h1, .account-panel h2, .account-panel h3 { margin: 0 0 12px; color: var(--ink); }
.account-panel p { margin: 0; color: var(--muted); line-height: 1.5; }
.account-support-teaser { display: flex; align-items: center; justify-content: space-between; gap: 18px; background: linear-gradient(125deg, rgba(var(--action-rgb),0.13), var(--glass) 54%, rgba(255,211,106,0.12)); }
.account-support-teaser > div { display: grid; gap: 5px; }
.account-support-teaser h2 { margin: 0; }
.account-support-teaser .ghost-button { flex: 0 0 auto; }
.account-support-panel { display: grid; gap: 18px; max-width: 820px; }
.account-support-head { display: grid; gap: 6px; }
.account-support-head h1 { margin: 0; }
.account-support-form { display: grid; gap: 14px; }
.account-support-form label { display: grid; gap: 7px; color: var(--ink); font-size: 0.82rem; font-weight: 800; }
.account-support-form select, .account-support-form textarea { border: 1px solid var(--glass-border); background: var(--glass-child); }
.account-support-form textarea { min-height: 180px; line-height: 1.5; }
.account-support-form small { color: var(--muted); line-height: 1.45; }
.account-support-form .submit-button { justify-self: start; }
.account-support-notice { border-radius: 8px; padding: 11px 13px; background: rgba(45,151,98,0.10); color: #24704d !important; font-weight: 760; }
.account-support-notice.is-error { background: rgba(190,88,105,0.10); color: var(--brand-magenta) !important; }
.paid-support-widget { position: fixed; right: max(18px, env(safe-area-inset-right)); bottom: max(18px, env(safe-area-inset-bottom)); z-index: 90; display: grid; justify-items: end; gap: 10px; }
.paid-support-trigger { display: inline-flex; align-items: center; gap: 9px; min-height: 48px; border: 0; border-radius: 999px; padding: 0 18px; background: var(--action); color: #fff; font: inherit; font-size: 0.84rem; font-weight: 880; cursor: pointer; box-shadow: 0 14px 34px rgba(var(--action-rgb),0.28), inset 0 1px 0 rgba(255,255,255,0.28); }
.paid-support-trigger svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.paid-support-popover { width: min(390px, calc(100vw - 28px)); max-height: min(650px, calc(100vh - 92px)); overflow: auto; border: 1px solid var(--glass-border); border-radius: 14px; padding: 18px; background: color-mix(in srgb, var(--canvas) 91%, transparent); box-shadow: 0 24px 64px rgba(29,28,25,0.24); backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); }
.paid-support-popover[hidden] { display: none; }
.paid-support-popover > header { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; }
.paid-support-popover > header > div { display: grid; gap: 3px; }
.paid-support-popover > header span { color: var(--action); font-size: 0.64rem; font-weight: 900; letter-spacing: 0.1em; text-transform: uppercase; }
.paid-support-popover h2 { margin: 0; color: var(--ink); font-size: 1.08rem; }
.paid-support-popover > p { margin: 9px 0 14px; color: var(--muted); font-size: 0.8rem; line-height: 1.45; }
.paid-support-close { width: 32px; height: 32px; border: 0; border-radius: 50%; padding: 0; background: var(--glass-child); color: var(--muted); font: 1.35rem/1 sans-serif; cursor: pointer; }
.paid-support-widget-form { display: grid; gap: 10px; }
.paid-support-widget-form label { display: grid; gap: 5px; color: var(--ink); font-size: 0.75rem; font-weight: 800; }
.paid-support-widget-form select, .paid-support-widget-form textarea { border: 1px solid var(--glass-border); background: var(--glass-child); }
.paid-support-widget-form textarea { min-height: 132px; line-height: 1.45; }
.paid-support-widget-form small { color: var(--muted); font-size: 0.69rem; line-height: 1.4; }
.paid-support-widget-form .submit-button { width: 100%; justify-content: center; }
.paid-support-widget-status { min-height: 1.2em; margin: 0; color: var(--muted); font-size: 0.75rem; font-weight: 750; line-height: 1.4; }
.paid-support-widget-status.is-success { color: #24704d; }
.paid-support-widget-status.is-error { color: var(--brand-magenta); }
@media (max-width: 560px) {
    .paid-support-widget { right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); }
    .paid-support-popover { width: calc(100vw - 24px); max-height: calc(100vh - 80px); }
    .paid-support-trigger { min-height: 46px; padding: 0 15px; }
}
.account-public-profile { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 14px 18px; overflow: hidden; background: linear-gradient(125deg, rgba(var(--action-rgb),0.10), var(--glass) 48%, rgba(255,211,106,0.10)); }
.account-public-profile-avatar, .public-profile-avatar { display: grid; place-items: center; overflow: hidden; border-radius: 50%; background: linear-gradient(145deg, rgba(var(--action-rgb),0.18), rgba(255,211,106,0.28)); color: var(--action); font-family: "Manrope", system-ui, sans-serif; font-weight: 950; box-shadow: inset 0 0 0 1px rgba(255,255,255,0.82), 0 0 0 3px rgba(var(--action-rgb),0.12), 0 12px 32px rgba(59,78,102,0.12); }
.account-public-profile-avatar { width: 92px; height: 92px; font-size: 1.65rem; }
.account-public-profile-avatar img, .public-profile-avatar img { width: 100%; height: 100%; object-fit: cover; }
.account-public-profile-copy { min-width: 0; display: grid; gap: 4px; }
.account-public-profile-copy h2 { margin: 0; font-size: 1.22rem; }
.account-public-profile-copy p { max-width: 660px; font-size: 0.84rem; }
.public-profile-eyebrow { color: var(--action); font-size: 0.69rem; font-weight: 920; letter-spacing: 0.13em; text-transform: uppercase; }
.account-profile-image-form { display: grid; justify-items: end; gap: 6px; }
.account-profile-image-form small { max-width: 310px; color: var(--muted); font-size: 0.68rem; line-height: 1.35; text-align: right; }
.account-profile-image-picker { position: relative; cursor: pointer; }
.account-profile-image-picker input { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); clip-path: inset(50%); white-space: nowrap; }
.account-profile-image-remove { grid-column: 3; justify-self: end; border: 0; padding: 0; background: transparent; cursor: pointer; font: inherit; }
.account-profile-image-message { grid-column: 1 / -1; width: 100%; border-radius: 8px; padding: 8px 10px; background: rgba(var(--action-rgb),0.09); }
.account-profile-image-message.is-blocked, .account-profile-image-message.is-invalid, .account-profile-image-message.is-failed { background: rgba(190,88,105,0.10); color: #a44b5a; }

.public-profile-page { display: grid; gap: 18px; margin: 10px 0 48px; }
.public-profile-hero, .public-profile-section { border: 1px solid var(--glass-border); border-radius: 12px; background: var(--glass); box-shadow: var(--glass-shadow); backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.public-profile-hero { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 18px 24px; padding: 28px; overflow: hidden; background: linear-gradient(130deg, rgba(var(--action-rgb),0.13), var(--glass) 52%, rgba(255,211,106,0.13)); }
.public-profile-hero::after { position: absolute; right: -90px; top: -120px; width: 320px; height: 320px; border-radius: 50%; background: radial-gradient(circle, rgba(var(--action-rgb),0.16), transparent 68%); content: ""; pointer-events: none; }
.public-profile-hero > * { position: relative; z-index: 1; }
.public-profile-avatar { width: 136px; height: 136px; font-size: 2.35rem; }
.public-profile-identity { min-width: 0; display: grid; gap: 5px; }
.public-profile-identity h1 { margin: 0; color: var(--ink); font-family: "Manrope", system-ui, sans-serif; font-size: clamp(1rem, 2.5vw, 1.8rem); line-height: 1; letter-spacing: -0.055em; overflow-wrap: anywhere; }
.public-profile-identity p { margin: 0; color: var(--muted); font-size: 0.84rem; font-weight: 760; }
.public-profile-edit { align-self: start; }
.public-profile-stats { grid-column: 2 / -1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 0; }
.public-profile-stats > div { min-width: 0; display: grid; gap: 3px; border: 1px solid rgba(255,255,255,0.60); border-radius: 10px; padding: 11px 13px; background: rgba(255,255,255,0.40); }
.public-profile-stats dt { color: var(--muted); font-size: 0.69rem; font-weight: 820; }
.public-profile-stats dd { margin: 0; color: var(--ink); font-size: 1.35rem; font-weight: 950; }
.public-profile-section { display: grid; gap: 14px; padding: 20px; }
.public-profile-section-head { display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.public-profile-section-head > div { display: grid; gap: 2px; }
.public-profile-section-head span { color: var(--action); font-size: 0.67rem; font-weight: 920; letter-spacing: 0.12em; text-transform: uppercase; }
.public-profile-section-head h2 { margin: 0; color: var(--ink); font-size: 1.18rem; line-height: 1.16; }
.public-profile-section-head > strong { min-width: 32px; min-height: 32px; display: grid; place-items: center; border-radius: 50%; background: rgba(var(--action-rgb),0.10); color: var(--action); font-size: 0.75rem; }
.public-profile-project-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.public-profile-project-card { min-width: 0; display: grid; grid-template-columns: 90px minmax(0, 1fr); gap: 12px; border: 1px solid rgba(255,255,255,0.62); border-radius: 10px; padding: 9px; background: rgba(255,255,255,0.38); color: inherit; text-decoration: none; transition: transform 150ms ease, background 150ms ease, box-shadow 150ms ease; }
.public-profile-project-card:hover, .public-profile-project-card:focus-visible { background: rgba(255,255,255,0.66); box-shadow: 0 12px 28px rgba(67,78,91,0.09); color: inherit; text-decoration: none; transform: translateY(-2px); outline: 0; }
.public-profile-project-cover { width: 90px; aspect-ratio: 1; display: grid; place-items: center; overflow: hidden; border-radius: 8px; background: #fff; color: var(--action); font-size: 1.25rem; font-weight: 950; }
.public-profile-project-cover img { width: 100%; height: 100%; object-fit: contain; object-position: center; }
.public-profile-project-card > div:last-child { min-width: 0; display: grid; align-content: center; gap: 4px; }
.public-profile-project-card h3 { margin: 0; color: var(--ink); font-size: 0.88rem; line-height: 1.22; overflow-wrap: anywhere; }
.public-profile-project-card p { display: -webkit-box; margin: 0; overflow: hidden; color: var(--muted); font-size: 0.72rem; line-height: 1.35; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.public-profile-project-card > div:last-child > span { color: var(--action); font-size: 0.69rem; font-weight: 880; }
.public-profile-check-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.public-profile-empty { margin: 0; border: 1px dashed var(--glass-border); border-radius: 10px; padding: 20px; color: var(--muted); text-align: center; }
@media (max-width: 980px) {
    .public-profile-project-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
    .account-support-teaser { align-items: stretch; flex-direction: column; }
    .account-support-teaser .ghost-button, .account-support-form .submit-button { width: 100%; justify-content: center; }
    .account-public-profile, .public-profile-hero { grid-template-columns: 1fr; justify-items: center; text-align: center; }
    .account-public-profile-copy { justify-items: center; }
    .account-profile-image-form { justify-items: center; }
    .account-profile-image-form small { text-align: center; }
    .account-profile-image-remove { grid-column: auto; justify-self: center; }
    .public-profile-hero { padding: 22px 18px; }
    .public-profile-avatar { width: 112px; height: 112px; font-size: 2rem; }
    .public-profile-edit { align-self: auto; }
    .public-profile-stats { grid-column: auto; width: 100%; }
    .public-profile-project-grid, .public-profile-check-grid { grid-template-columns: 1fr; }
}
@media (max-width: 440px) {
    .public-profile-stats { grid-template-columns: 1fr; }
    .public-profile-project-card { grid-template-columns: 72px minmax(0, 1fr); }
    .public-profile-project-cover { width: 72px; }
}
.email-import-sender-settings { display: grid; gap: 14px; }
.email-import-sender-form { display: grid; grid-template-columns: minmax(220px, 1fr) auto; align-items: end; gap: 10px; }
.email-import-sender-form label { display: grid; gap: 6px; color: var(--muted); font-size: 0.78rem; font-weight: 760; }
.email-import-sender-form input { width: 100%; min-height: 42px; padding: 0 12px; border: 1px solid var(--glass-border); border-radius: 8px; background: var(--glass-child); color: var(--ink); font: inherit; }
.email-import-sender-list { display: grid; gap: 8px; }
.email-import-sender-row { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: 12px; padding: 12px; border: 1px solid var(--glass-line); border-radius: 8px; background: var(--glass-child); }
.email-import-sender-row > div:first-child { min-width: 0; display: grid; gap: 2px; }
.email-import-sender-row strong, .email-import-sender-row span, .email-import-sender-row small { overflow-wrap: anywhere; }
.email-import-sender-row > div:first-child span, .email-import-sender-row small { color: var(--muted); }
.email-import-sender-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 7px; }
.email-import-sender-status.is-trusted { color: var(--action); }
.email-import-sender-status.is-blocked { color: var(--brand-magenta); }
.form-message.is-error { color: var(--brand-magenta); }
@media (max-width: 760px) { .email-import-sender-form, .email-import-sender-row { grid-template-columns: 1fr; align-items: stretch; } .email-import-sender-actions { justify-content: flex-start; } }
.account-billing-hero { display: grid; gap: 8px; }
.account-billing-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.account-muted-note { margin-top: 12px !important; font-size: 0.9rem; }
.account-feature-list { display: grid; gap: 8px; margin: 0; padding-left: 18px; color: var(--muted); line-height: 1.45; }
.account-feature-list li::marker { color: var(--action); }
.account-ai-grid { align-items: stretch; }
.account-ai-card { display: grid; align-content: start; gap: 12px; min-height: 138px; }
.account-ai-card h2 { margin-bottom: 0; font-size: 1.02rem; line-height: 1.16; }
.account-ai-card .account-list { gap: 0; }
.account-ai-card .account-row:last-child { border-bottom: 0; }
.account-ai-dashboard { display: grid; gap: 14px; min-width: 0; }
.account-ai-hero { display: flex; align-items: flex-start; justify-content: space-between; gap: 28px; padding: 24px; overflow: hidden; position: relative; }
.account-ai-hero::after { width: 210px; height: 210px; border-radius: 50%; background: radial-gradient(circle, rgba(72,139,211,0.18), rgba(72,139,211,0)); content: ""; position: absolute; right: -42px; top: -88px; pointer-events: none; }
.account-ai-hero > * { position: relative; z-index: 1; }
.account-ai-hero h1 { margin: 4px 0 8px; font-size: clamp(0.775rem, 1.3vw, 1.175rem); line-height: 1.04; }
.account-ai-hero p { max-width: 760px; font-size: 0.98rem; }
.account-ai-eyebrow { display: block; color: var(--link); font-size: 0.72rem; font-weight: 900; letter-spacing: 0.11em; text-transform: uppercase; }
.account-ai-period { flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 32px; border: 1px solid rgba(var(--action-rgb),0.2); border-radius: 999px; padding: 0 12px; background: rgba(var(--action-rgb),0.1); color: var(--link); font-size: 0.78rem; font-weight: 850; white-space: nowrap; }
.account-ai-period-soft { min-height: 27px; padding: 0 10px; background: var(--glass-child); color: var(--muted); }
.account-ai-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.account-ai-kpi { min-width: 0; min-height: 118px; display: grid; align-content: space-between; gap: 4px; border: 1px solid var(--glass-border); border-radius: 8px; padding: 16px; background: var(--glass); box-shadow: var(--glass-shadow); backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.account-ai-kpi-primary { background: linear-gradient(145deg, rgba(var(--action-rgb),0.18), var(--glass)); }
.account-ai-kpi > span { color: var(--muted); font-size: 0.78rem; font-weight: 830; }
.account-ai-kpi > strong { color: var(--ink); font-size: clamp(1.8rem, 3vw, 2.65rem); line-height: 1; }
.account-ai-kpi > small { color: var(--muted); font-size: 0.72rem; line-height: 1.3; }
.account-ai-two-column { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; min-width: 0; }
.account-ai-section-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin-bottom: 14px; }
.account-ai-section-head h2, .account-ai-transparency h2, .account-ai-value-panel h2, .account-ai-telemetry h2, .account-ai-insights h2 { margin: 4px 0 0; font-size: 1.12rem; }
.account-ai-section-intro { margin-bottom: 12px !important; }
.account-ai-credit-list, .account-ai-activity-list { display: grid; gap: 8px; }
.account-ai-credit-row, .account-ai-activity-row { min-height: 62px; display: flex; align-items: center; justify-content: space-between; gap: 16px; border-radius: 8px; padding: 11px 12px; background: var(--glass-child); }
.account-ai-credit-row span:first-child, .account-ai-activity-row span:first-child { min-width: 0; display: grid; gap: 3px; }
.account-ai-credit-row small, .account-ai-activity-row small { color: var(--muted); font-size: 0.73rem; line-height: 1.3; }
.account-ai-credit-number { flex: 0 0 auto; display: grid; justify-items: end; }
.account-ai-credit-number strong { color: var(--ink); font-size: 1.35rem; }
.account-ai-activity-amount { flex: 0 0 auto; border-radius: 999px; padding: 5px 9px; font-size: 0.78rem; font-weight: 880; }
.account-ai-activity-charged { background: rgba(236,92,126,0.12); color: #a32b50; }
.account-ai-activity-refunded { background: rgba(75,174,111,0.14); color: #2f7d48; }
.account-ai-note { margin-top: 12px !important; border-left: 3px solid rgba(var(--action-rgb),0.45); padding-left: 10px; font-size: 0.78rem; }
.account-ai-empty { min-height: 126px; display: grid; place-content: center; justify-items: center; gap: 5px; border: 1px dashed var(--glass-border); border-radius: 8px; padding: 18px; color: var(--muted); text-align: center; }
.account-ai-empty strong { color: var(--ink); }
.account-ai-empty span { max-width: 360px; font-size: 0.8rem; }
.account-ai-feature-panel { padding: 20px; }
.account-ai-feature-head { margin-bottom: 16px; }
.account-ai-feature-head p { max-width: 760px; margin-top: 5px; }
.account-ai-legend { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 6px; }
.account-ai-status { width: max-content; display: inline-flex; align-items: center; min-height: 23px; border-radius: 999px; padding: 0 8px; font-size: 0.68rem; font-weight: 880; white-space: nowrap; }
.account-ai-status-active { background: rgba(75,174,111,0.14); color: #2f7d48; }
.account-ai-status-hybrid { background: rgba(72,139,211,0.14); color: var(--link); }
.account-ai-status-prepared { background: rgba(242,184,63,0.18); color: #8a6410; }
.account-ai-status-blocked { background: rgba(236,92,126,0.13); color: #a32b50; }
.account-ai-feature-list { display: grid; gap: 9px; }
.account-ai-feature { border: 1px solid var(--glass-line); border-radius: 8px; padding: 14px; background: var(--glass-child); }
.account-ai-feature-title { display: grid; grid-template-columns: 30px minmax(0, 1fr) auto; align-items: start; gap: 11px; }
.account-ai-feature-title h3 { margin: 1px 0 4px; font-size: 0.98rem; }
.account-ai-feature-title p { max-width: 900px; font-size: 0.79rem; line-height: 1.4; }
.account-ai-feature-index { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 50%; background: rgba(var(--action-rgb),0.13); color: var(--link); font-size: 0.73rem; font-weight: 900; }
.account-ai-feature-facts { display: grid; grid-template-columns: 1.25fr 1.05fr 0.8fr 0.9fr; gap: 8px; margin: 12px 0 0 41px; }
.account-ai-feature-facts > span { min-width: 0; display: grid; align-content: start; gap: 3px; border-top: 1px solid var(--glass-line); padding-top: 9px; }
.account-ai-feature-facts small { color: var(--muted); font-size: 0.66rem; font-weight: 760; }
.account-ai-feature-facts strong { color: var(--ink); font-size: 0.75rem; line-height: 1.32; overflow-wrap: anywhere; }
.account-ai-check-list { display: grid; gap: 8px; margin: 14px 0 0; padding: 0; list-style: none; }
.account-ai-check-list li { position: relative; padding-left: 22px; color: var(--muted); font-size: 0.8rem; line-height: 1.4; }
.account-ai-check-list li::before { width: 15px; height: 15px; display: grid; place-items: center; border-radius: 50%; background: rgba(75,174,111,0.15); color: #2f7d48; content: "✓"; font-size: 0.63rem; font-weight: 900; position: absolute; left: 0; top: 1px; }
.account-ai-check-list-open li::before { background: rgba(242,184,63,0.18); color: #8a6410; content: "→"; }
.account-ai-value-grid, .account-ai-cost-summary { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-top: 14px; }
.account-ai-value-grid > span, .account-ai-cost-summary > span { min-width: 0; display: grid; gap: 3px; border-radius: 8px; padding: 12px; background: var(--glass-child); }
.account-ai-value-grid strong, .account-ai-cost-summary strong { color: var(--ink); font-size: 1.24rem; line-height: 1; overflow-wrap: anywhere; }
.account-ai-value-grid small, .account-ai-cost-summary small { color: var(--muted); font-size: 0.67rem; line-height: 1.3; }
.account-ai-cost-lab { min-width: 0; padding: 20px; }
.account-ai-cost-head p { max-width: 820px; margin-top: 5px; }
.account-ai-cost-summary { margin: 0 0 14px; }
.account-ai-cost-table-wrap { width: 100%; overflow-x: auto; border: 1px solid var(--glass-line); border-radius: 8px; }
.account-ai-cost-table { width: 100%; min-width: 1050px; border-collapse: collapse; color: var(--ink); }
.account-ai-cost-table th { padding: 10px 12px; background: rgba(var(--action-rgb),0.08); color: var(--muted); font-size: 0.68rem; font-weight: 880; text-align: left; }
.account-ai-cost-table td { min-width: 175px; padding: 11px 12px; border-top: 1px solid var(--glass-line); vertical-align: top; }
.account-ai-cost-table td:first-child { min-width: 190px; }
.account-ai-cost-table td:nth-child(2), .account-ai-cost-table td:nth-child(5) { min-width: 240px; }
.account-ai-cost-table td > strong, .account-ai-cost-table td > small { display: block; }
.account-ai-cost-table td > strong { font-size: 0.76rem; line-height: 1.32; }
.account-ai-cost-table td > small { margin-top: 4px; color: var(--muted); font-size: 0.67rem; line-height: 1.32; }
.account-ai-cost-table .account-ai-status { display: inline-flex; margin-top: 6px; }
.account-ai-warning { margin-top: 12px !important; border-radius: 8px; padding: 11px 12px; background: rgba(242,184,63,0.13); color: #75560f !important; font-size: 0.76rem; }
.account-ai-data-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 14px; }
.account-ai-data-columns h3 { margin: 0; font-size: 0.86rem; }
.account-ai-data-columns .account-ai-check-list { margin-top: 9px; }
.account-ai-insight-list { display: grid; gap: 7px; margin-top: 14px; }
.account-ai-insight-list div { display: grid; grid-template-columns: 24px minmax(0, 1fr); align-items: center; gap: 8px; border-radius: 8px; padding: 8px 10px; background: var(--glass-child); }
.account-ai-insight-list span { width: 22px; height: 22px; display: grid; place-items: center; border-radius: 50%; background: rgba(var(--action-rgb),0.13); color: var(--link); font-size: 0.66rem; font-weight: 900; }
.account-ai-insight-list strong { color: var(--ink); font-size: 0.75rem; line-height: 1.32; }
.account-metric { padding: 16px; border-radius: 8px; background: var(--glass-child); }
.account-metric strong { display: block; color: var(--ink); font-size: 1.34rem; line-height: 1.2; overflow-wrap: anywhere; }
.account-metric span { color: var(--muted); font-size: 0.82rem; font-weight: 800; }
.account-list { display: grid; gap: 9px; }
.account-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--glass-line); }
.account-row span { display: grid; gap: 4px; }
.account-row span, .account-row small { color: var(--muted); }
.account-row span strong { color: var(--ink); font-weight: 700; }
.account-row strong { color: var(--ink); text-align: right; overflow-wrap: anywhere; }
.account-inline-action { width: max-content; margin-top: 14px; }
.account-import-address { font-size: 0.92rem; }
.account-copy-value { min-width: 0; display: inline-flex; align-items: center; justify-content: flex-end; gap: 8px; }
.account-copy-button { width: 28px; min-width: 28px; height: 28px; display: inline-grid; place-items: center; border: 1px solid rgba(var(--action-rgb),0.18); border-radius: 8px; padding: 0; background: rgba(255,255,255,0.38); color: var(--action); cursor: pointer; }
.account-copy-button[hidden] { display: none; }
.account-copy-button svg { width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.account-copy-button:hover, .account-copy-button:focus-visible, .account-copy-button.is-copied { background: rgba(var(--action-rgb),0.13); }
@media (max-width: 760px) { .account-copy-value { justify-content: flex-start; } }
.account-alias-picker { display: grid; gap: 8px; padding: 12px 0 14px; border-bottom: 1px solid var(--glass-line); }
.account-alias-picker > span { color: var(--muted); font-weight: 780; }
.account-alias-picker small { color: var(--muted); line-height: 1.35; }
.account-alias-options { display: flex; flex-wrap: wrap; gap: 8px; }
.account-alias-option { min-height: 34px; border: 1px solid rgba(var(--action-rgb),0.22); border-radius: 999px; padding: 0 12px; background: rgba(var(--action-rgb),0.09); color: var(--action); font: inherit; font-weight: 830; cursor: pointer; }
.account-alias-option:hover, .account-alias-option:focus-visible { background: var(--action); color: #fff; }
.account-plan-badge { min-height: 28px; display: inline-flex; align-items: center; border-radius: 8px; padding: 0 9px; background: rgba(var(--action-rgb),0.12); color: var(--action); }
.account-plan-free { background: rgba(32,32,29,0.08); color: var(--ink); }
.account-plan-plus { background: rgba(73,134,198,0.16); color: #2d6dac; }
.account-plan-pro { background: rgba(254,212,121,0.36); color: #8d6b0e; }
.account-plan-byok { background: rgba(160,24,76,0.12); color: #a0184c; }
.product-detail-view { display: grid; gap: 18px; }
.product-detail-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; }
.product-detail-back { justify-self: start; }
.product-detail-card { position: relative; display: grid; grid-template-columns: minmax(220px, 0.7fr) minmax(0, 1.3fr); gap: 24px; align-items: start; padding: 24px; border-radius: 8px; background: var(--glass); border: 1px solid var(--glass-border); box-shadow: var(--glass-shadow); backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.product-detail-gallery { display: grid; gap: 8px; min-width: 0; }
.product-detail-media { position: relative; display: grid; place-items: center; aspect-ratio: 1 / 1; overflow: hidden; border-radius: 8px; background: #fff; color: var(--muted); }
.product-detail-media img, .product-detail-media svg { width: 100%; height: 100%; object-fit: contain; }
.product-detail-media svg { padding: 24%; fill: none; stroke: currentColor; stroke-width: 2; }
.product-detail-main { display: grid; gap: 14px; min-width: 0; }
.product-detail-main-head { display: flex; align-items: start; justify-content: space-between; gap: 14px; }
.product-detail-main h1 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: clamp(0.775rem, 1.5vw, 1.25rem); line-height: 1.04; }
.product-detail-description { max-width: 720px; margin: 0; color: var(--muted); font-size: 0.96rem; line-height: 1.5; }
.product-detail-icon-actions { display: flex; align-items: center; justify-content: flex-end; gap: 12px; flex: 0 0 auto; margin-left: auto; }
.product-icon-button { width: 40px; height: 40px; display: inline-grid; place-items: center; border: 0; border-radius: 8px; background: transparent; color: var(--action); cursor: pointer; text-decoration: none; box-shadow: none; }
.product-icon-button svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.product-icon-button[aria-pressed="true"] svg { fill: currentColor; }
.product-inventory-remove-button { border-radius: 999px; background: #ffd36a; color: var(--action); box-shadow: 0 8px 22px rgba(255,211,106,0.24); }
.product-inventory-remove-button:hover, .product-inventory-remove-button:focus-visible { background: #d94b5a; color: #fff; opacity: 1; }
.product-inventory-remove-button .icon-remove { display: none; }
.product-inventory-remove-button:hover .icon-check, .product-inventory-remove-button:focus-visible .icon-check { display: none; }
.product-inventory-remove-button:hover .icon-remove, .product-inventory-remove-button:focus-visible .icon-remove { display: block; }
.product-icon-button-danger { background: rgba(159,93,84,0.16); border: 1px solid rgba(159,93,84,0.18); color: #9f5d54; backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.product-icon-button:hover, .product-icon-button:focus-visible { transform: translateY(-1px); outline: 0; color: var(--action); opacity: 0.78; }
.product-icon-button-danger:hover, .product-icon-button-danger:focus-visible { color: #fff; background: rgba(159,93,84,0.36); }
.product-icon-button.product-inventory-remove-button:hover, .product-icon-button.product-inventory-remove-button:focus-visible { background: #d94b5a; color: #fff; opacity: 1; }
.product-detail-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin: 0; }
.product-detail-facts div { min-width: 0; padding: 12px; border-radius: 8px; background: var(--glass-child); }
.product-detail-facts dt { color: var(--muted); font-size: 0.78rem; font-weight: 760; }
.product-detail-facts dd { margin: 4px 0 0; font-weight: 820; overflow-wrap: anywhere; }
.product-detail-actions { display: flex; gap: 10px; align-items: center; flex-wrap: wrap; }
.product-detail-sections { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.product-detail-section { display: grid; align-content: start; gap: 10px; padding: 18px; }
.product-detail-section-wide { grid-column: span 2; }
.product-detail-section-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.product-detail-section-head h2 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: 1rem; line-height: 1.1; }
.detail-pill { min-height: 24px; display: inline-flex; align-items: center; border-radius: 999px; padding: 0 8px; background: var(--glass-child); color: var(--muted); font-size: 0.74rem; font-weight: 820; white-space: nowrap; }
.detail-mini-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin: 0; }
.detail-mini-grid div { min-width: 0; padding: 9px; border-radius: 8px; background: var(--glass-child); }
.detail-mini-grid dt { color: var(--muted); font-size: 0.72rem; font-weight: 760; }
.detail-mini-grid dd { margin: 3px 0 0; font-size: 0.88rem; font-weight: 780; overflow-wrap: anywhere; }
.product-inline-form { display: grid; gap: 10px; }
.product-inline-form label, .product-notes-field { display: grid; gap: 6px; color: var(--muted); font-size: 0.78rem; font-weight: 760; }
.product-inline-form input, .product-notes-field textarea { width: 100%; border: 1px solid rgba(255,255,255,0.36); border-radius: 8px; padding: 10px 12px; background: var(--glass-child); color: var(--ink); font: inherit; box-shadow: inset 0 1px 0 rgba(255,255,255,0.42); }
.product-notes-field textarea { min-height: 150px; resize: vertical; white-space: pre-wrap; }
.product-inline-form input.is-saved, .product-notes-field textarea.is-saved { animation: autosavePulse 650ms ease; }
.product-inline-form input.has-error, .product-notes-field textarea.has-error { border-color: rgba(159,93,84,0.58); }
.product-inventory-actions { display: grid; gap: 10px; padding-top: 4px; border-top: 1px solid var(--glass-line); }
.product-inventory-actions h3 { margin: 0; color: var(--ink); font-family: "Manrope", system-ui, sans-serif; font-size: 0.9rem; line-height: 1.1; }
.product-inventory-action { display: grid; grid-template-columns: minmax(96px, 0.72fr) minmax(84px, 0.56fr) minmax(120px, 1fr) auto; gap: 8px; align-items: end; padding-top: 8px; border-top: 1px solid rgba(255,255,255,0.22); }
.product-inventory-action:first-of-type { border-top: 0; padding-top: 0; }
.product-inventory-action strong { align-self: center; color: var(--ink); font-size: 0.86rem; line-height: 1.12; }
.product-inventory-action label { display: grid; gap: 5px; color: var(--muted); font-size: 0.72rem; font-weight: 760; }
.product-inventory-action input { width: 100%; min-width: 0; border: 1px solid rgba(255,255,255,0.36); border-radius: 8px; padding: 8px 10px; background: var(--glass-child); color: var(--ink); font: inherit; }
.product-inventory-action .submit-button, .product-inventory-action .ghost-button { min-height: 36px; border-radius: 8px; padding: 0 12px; white-space: nowrap; box-shadow: none; }
@media (max-width: 980px) {
    .product-inventory-action { grid-template-columns: 1fr 0.7fr; }
    .product-inventory-action strong, .product-inventory-action label:nth-of-type(2), .product-inventory-action button { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
    .product-inventory-action { grid-template-columns: 1fr; }
    .product-inventory-action strong, .product-inventory-action label, .product-inventory-action button { grid-column: auto; }
}
@keyframes autosavePulse { 0% { box-shadow: 0 0 0 0 rgba(255,211,106,0.0), inset 0 1px 0 rgba(255,255,255,0.42); } 35% { box-shadow: 0 0 0 4px rgba(255,211,106,0.46), inset 0 1px 0 rgba(255,255,255,0.42); background: rgba(255,211,106,0.22); } 100% { box-shadow: 0 0 0 0 rgba(255,211,106,0.0), inset 0 1px 0 rgba(255,255,255,0.42); } }
.product-detail-overview { display: grid; grid-template-columns: minmax(240px, 1fr) minmax(0, 2fr); gap: 14px; align-items: start; }
.product-detail-overview-main, .product-detail-overview-media { display: grid; gap: 12px; min-width: 0; }
.product-detail-overview .product-gallery-panel { padding: 12px; gap: 10px; }
.product-gallery-panel .product-detail-media { height: clamp(230px, 28vw, 390px); aspect-ratio: auto; }
.product-gallery-panel .product-detail-media picture { display: block; width: 100%; height: 100%; min-height: 0; }
.product-gallery-panel .product-detail-media img { display: block; width: 100%; height: 100%; object-fit: contain; }
.product-gallery-panel .product-detail-image-thumbs { display: flex; flex-wrap: wrap; gap: 8px; align-items: start; }
.product-gallery-panel .product-detail-image-thumbs > * { width: 72px; flex: 0 0 72px; aspect-ratio: 1 / 0.8; }
.product-detail-overview .product-detail-main { padding: 20px; gap: 12px; }
.product-detail-overview .product-detail-main h1 { font-size: clamp(1.1rem, 1.65vw, 1.55rem); line-height: 1.22; overflow-wrap: anywhere; }
.product-detail-overview .product-detail-main-head .seo-eyebrow { margin: 0; }
.catalog-inventory-overview .catalog-detail-media { height: clamp(230px, 28vw, 390px); aspect-ratio: auto; }
.catalog-inventory-overview .catalog-image-thumbs { display: flex; flex-wrap: wrap; gap: 8px; align-items: start; }
.catalog-inventory-overview .catalog-image-thumbs > * { width: 72px; flex: 0 0 72px; }
.catalog-inventory-overview .catalog-detail-heading { min-height: 0; }
.catalog-inventory-overview .catalog-detail-main h1 { max-width: none; margin: 0; }
.catalog-inventory-overview .catalog-facts { margin: 0; }
.catalog-inventory-detail .catalog-private-detail { min-width: 0; container-type: inline-size; }
.catalog-inventory-detail .catalog-private-sections { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.catalog-inventory-detail .catalog-private-side-stack { display: grid; grid-template-columns: minmax(0, 1fr); align-content: start; }
.catalog-inventory-detail .catalog-private-projects { grid-column: auto; }
.catalog-inventory-detail .catalog-private-sections .simple-panel { min-width: 0; }
.catalog-inventory-detail .catalog-private-sections .detail-row { flex-wrap: wrap; }
.catalog-inventory-detail .catalog-private-sections .detail-row > * { min-width: 0; overflow-wrap: anywhere; }
@container (max-width: 640px) {
    .catalog-inventory-detail .catalog-private-sections { grid-template-columns: minmax(0, 1fr); }
}
.product-detail-identity:empty, .product-detail-actions:empty { display: none; }
.product-detail-identity { grid-template-columns: repeat(auto-fit, minmax(min(160px, 100%), 1fr)); }
.product-detail-identity div { padding: 7px 0; background: transparent; border-bottom: 1px solid var(--glass-line); border-radius: 0; }
.product-detail-source-link { color: var(--muted); font-size: 0.76rem; text-underline-offset: 3px; }
.product-inventory-panel { min-width: 0; }
.product-stock-editor { display: grid; grid-template-columns: auto auto minmax(100px, 1fr) 38px; align-items: center; gap: 8px; margin: 0; }
.product-stock-quantity-label { display: flex; align-items: center; gap: 10px; min-width: 0; color: var(--ink); font-size: 0.84rem; font-weight: 760; }
.product-stock-stepper { display: grid; grid-template-columns: 32px minmax(48px, 76px) 32px; min-height: 38px; border: 1px solid var(--glass-border); border-radius: 8px; background: var(--glass-child); overflow: hidden; }
.product-stock-stepper button { border: 0; padding: 0; background: transparent; color: var(--action); font: inherit; font-size: 1.1rem; cursor: pointer; }
.product-stock-stepper input { appearance: textfield; -moz-appearance: textfield; width: 100%; min-width: 0; border: 0; border-inline: 1px solid var(--glass-line); padding: 8px 2px; background: transparent; color: var(--ink); font: inherit; text-align: center; }
.product-stock-stepper input::-webkit-inner-spin-button, .product-stock-stepper input::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.product-stock-stepper:focus-within { outline: 2px solid rgba(var(--action-rgb), 0.5); outline-offset: 2px; }
.product-stock-stepper input:focus { outline: none; }
.product-stock-stepper button:hover:not(:disabled) { background: rgba(var(--action-rgb), 0.1); }
.product-stock-unit { color: var(--muted); font-size: 0.8rem; }
.product-stock-reason { display: grid; gap: 4px; min-width: 0; color: var(--muted); font-size: 0.75rem; }
.product-stock-reason input { width: 100%; min-width: 0; min-height: 38px; padding: 8px 10px; border: 1px solid var(--glass-border); border-radius: 8px; background: var(--glass-child); color: var(--ink); font: inherit; }
.product-inventory-save { width: 38px; height: 38px; display: grid; place-items: center; padding: 0; border: 1px solid rgba(var(--action-rgb), 0.25); border-radius: 8px; background: var(--action); color: #fff; cursor: pointer; }
.product-inventory-save svg { width: 21px; height: 21px; fill: none; stroke: currentColor; stroke-width: 2.3; stroke-linecap: round; stroke-linejoin: round; }
.product-inventory-save:disabled { background: var(--glass-child); color: var(--muted); opacity: 0.6; }
.product-inventory-save:focus-visible { outline: 2px solid var(--action); outline-offset: 3px; }
.product-inventory-status { grid-column: 1 / -1; margin: 0; color: var(--muted); font-size: 0.78rem; line-height: 1.4; }
.product-inventory-status:empty, .product-stock-settings-status:empty { display: none; }
.product-inventory-status.is-error { color: var(--danger, #a12222); }
.product-inventory-panel .product-stock-settings { grid-template-columns: minmax(110px, 0.55fr) minmax(0, 1.45fr); padding-top: 12px; border-top: 1px solid var(--glass-line); gap: 8px 12px; }
.product-stock-settings-status { grid-column: 1 / -1; color: var(--muted); font-size: 0.74rem; }
[data-inventory-movement-list][hidden], [data-inventory-movement-empty][hidden] { display: none !important; }
@media (max-width: 980px) {
    .product-detail-overview { grid-template-columns: minmax(210px, 0.8fr) minmax(0, 1.6fr); }
    .product-stock-editor { grid-template-columns: minmax(0, 1fr) auto 38px; }
    .product-stock-reason { grid-column: 1 / 3; grid-row: 2; }
    .product-inventory-save { grid-column: 3; grid-row: 2; }
}
@media (max-width: 760px) {
    .product-detail-overview { grid-template-columns: minmax(0, 1fr); }
    .product-detail-overview-main { display: contents; }
    .product-detail-overview-media { order: 2; }
    .product-detail-overview .product-detail-main { order: 1; padding: 16px; }
    .product-detail-overview .product-gallery-panel { order: 2; }
    .product-detail-overview .product-inventory-panel { order: 3; }
    .product-detail-overview .catalog-private-detail { order: 4; }
    .product-detail-overview .product-ai-enrichment { order: 4; }
    .product-gallery-panel .product-detail-media { height: 270px; }
    .catalog-inventory-overview .catalog-detail-media { height: 270px; }
    .catalog-inventory-detail .catalog-private-sections { grid-template-columns: minmax(0, 1fr); }
    .product-inventory-panel .product-stock-settings { grid-template-columns: minmax(110px, 0.6fr) minmax(0, 1.4fr); }
    .product-ai-enrichment .product-detail-section-head { align-items: start; flex-wrap: wrap; }
}
.product-stat-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
.product-stat-chart { display: grid; align-content: start; gap: 9px; min-width: 0; padding: 12px; border-radius: 8px; background: var(--glass-child); }
.product-stat-chart h3 { margin: 0; color: var(--ink); font-family: "Manrope", system-ui, sans-serif; font-size: 0.86rem; line-height: 1.1; }
.stat-bar-row { display: grid; grid-template-columns: 86px minmax(0, 1fr) auto; gap: 9px; align-items: center; min-width: 0; }
.stat-bar-row span { color: var(--muted); font-size: 0.76rem; font-weight: 760; }
.stat-bar-row strong { color: var(--ink); font-size: 0.78rem; white-space: nowrap; }
.stat-bar { height: 12px; overflow: hidden; border-radius: 3px; background: rgba(32,32,29,0.09); }
.stat-bar i, .stat-bar b { display: block; height: 100%; min-width: 0; border-radius: inherit; }
.stat-bar i { background: rgba(var(--action-rgb),0.76); }
.stat-bar b { background: rgba(254,212,121,0.90); }
html[data-design="blue"] .stat-bar { background: rgba(237,247,255,0.10); }
html[data-design="blue"] .product-icon-button { color: #edf7ff; }
html[data-design="blue"] .product-icon-button-danger { background: rgba(159,93,84,0.34); border-color: rgba(255,211,204,0.22); color: #fff; }
.detail-list { display: grid; gap: 8px; }
.detail-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid var(--glass-line); color: inherit; text-decoration: none; }
.detail-row em { margin-left: 6px; color: var(--muted); font-size: 0.74rem; font-style: normal; font-weight: 760; }
.detail-row small { color: var(--muted); font-size: 0.85rem; text-align: right; }
.detail-placeholder-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 9px 10px; border-radius: 8px; background: var(--glass-child); color: var(--muted); font-size: 0.84rem; }
.detail-chip-row { display: flex; flex-wrap: wrap; gap: 6px; }
.detail-chip-row a, .detail-chip-row span { min-height: 24px; display: inline-flex; align-items: center; border-radius: 999px; padding: 0 8px; background: var(--glass-child); color: var(--muted); font-size: 0.74rem; font-weight: 760; text-decoration: none; }
.detail-chip-row a { color: var(--action); }
.detail-note { margin: 0; color: var(--muted); font-size: 0.88rem; line-height: 1.45; }
.mini-chart-placeholder { min-height: 74px; margin: 10px 0; }
.form-card h1, .simple-panel h1, .auth-card h1 { margin: 0 0 24px; font-family: "Manrope", system-ui, sans-serif; font-size: 1rem; line-height: 1.1; }
.page-intro, .seo-content-head { display: grid; justify-items: center; gap: 18px; text-align: center; }
.page-intro h1, .page-intro h2, .seo-content-head h1 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: clamp(1rem, 2.5vw, 1.65rem); line-height: 1.06; font-weight: 820; letter-spacing: 0; }
.page-block[data-page-block="products_intro"] .page-intro h1 { font-size: clamp(1rem, 2.5vw, 1.65rem); }
.page-intro p, .seo-content-head p { margin: 0; color: var(--muted); font-size: 1.04rem; line-height: 1.58; }
form { display: grid; gap: 16px; }
.field-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.field { display: grid; gap: 7px; }
.field.name-field { grid-column: 1 / -1; }
label { color: rgba(32,32,29,0.72); font-size: 0.92rem; font-weight: 700; }
.required { color: #9f5d54; }
input, select, textarea { width: 100%; border: 0; border-radius: 8px; outline: none; background: rgba(250,246,237,0.62); color: var(--ink); font: inherit; padding: 0 13px; box-shadow: none; }
input, select { height: 46px; }
input[type="checkbox"] { appearance: none; -webkit-appearance: none; width: 16px; min-width: 16px; max-width: 16px; height: 16px; min-height: 16px; max-height: 16px; margin: 0; padding: 0; display: inline-grid; place-items: center; border: 1.5px solid rgba(32,32,29,0.38); border-radius: 4px; background: rgba(255,255,255,0.72); box-shadow: inset 0 1px 0 rgba(255,255,255,0.72); cursor: pointer; }
input[type="checkbox"]::after { content: ""; width: 4px; height: 8px; border: solid #fff; border-width: 0 2px 2px 0; opacity: 0; transform: translateY(-1px) rotate(45deg); }
input[type="checkbox"]:checked { border-color: var(--action); background: var(--action); }
input[type="checkbox"]:checked::after { opacity: 1; }
input[type="checkbox"]:focus-visible { outline: 2px solid rgba(var(--action-rgb),0.38); outline-offset: 2px; }
select option { background: #f7f4ec; color: #20201d; }
textarea { min-height: 105px; padding-top: 12px; resize: vertical; }
.name-field input { height: 52px; font-size: 1.1rem; }
.help { color: var(--muted); font-size: 0.82rem; }
.error, .form-message { min-height: 18px; color: #9f5d54; font-size: 0.84rem; }
.suggestion { display: none; align-items: center; gap: 12px; padding: 12px; border-radius: 8px; background: rgba(250,227,0,0.13); color: rgba(32,32,29,0.74); font-size: 0.9rem; }
.suggestion.visible { display: flex; }
.suggestion img { width: 54px; height: 54px; border-radius: 8px; object-fit: contain; object-position: center; background: #fff; }
.actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 8px; }
.delete-button, .ghost-button, .add-button, .project-link { min-height: 38px; display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: 8px; cursor: pointer; font: inherit; font-weight: 750; padding: 0 12px; text-decoration: none; }
.delete-button, .ghost-button, .add-button, .project-link { background: var(--action); color: #fff; }
.modal-actions [hidden] { display: none !important; }
.product-return-options { display: grid; gap: 10px; margin: 14px 0; }
.product-return-option { display: grid; gap: 3px; width: 100%; min-height: 58px; padding: 12px; border: 1px solid var(--glass-border); border-radius: 8px; background: var(--glass-child); color: var(--ink); cursor: pointer; font: inherit; text-align: left; }
.product-return-option:disabled { opacity: 0.5; cursor: not-allowed; }
.product-return-option strong { font-size: 0.98rem; }
.product-return-option span { color: var(--muted); font-size: 0.82rem; }
.product-return-list { display: grid; gap: 10px; margin-top: 12px; }
.product-return-row { display: grid; grid-template-columns: auto 1fr; gap: 10px; align-items: start; padding: 10px; border-radius: 8px; background: var(--glass-child); }
.product-return-row strong, .product-return-row span { display: block; }
.product-return-row span { color: var(--muted); font-size: 0.84rem; }
.product-return-form { display: grid; gap: 12px; margin-top: 12px; }
.product-return-form[hidden] { display: none; }
.product-return-status { min-height: 1.2em; color: var(--muted); font-size: 0.88rem; }
button:disabled, .submit-button:disabled, .delete-button:disabled, .ghost-button:disabled, .add-button:disabled, .project-link:disabled, .price-compare:disabled, .link-button:disabled, [aria-disabled="true"] { opacity: 0.5; cursor: not-allowed; }
.links { display: flex; justify-content: center; margin-top: 18px; }
.links a { color: #a0184c; text-decoration: none; font-weight: 650; }
.page-footer { grid-row: 3; display: grid; justify-items: center; gap: 9px; padding: 10px 0 0; border-top: 1px solid rgba(32,32,29,0.08); color: rgba(32,32,29,0.54); font-size: 0.88rem; text-align: center; }
.iw-page:not(.iw-page--admin-area) > .page-shell:has(> .owner-admin-bar) { grid-template-rows: auto auto 1fr auto; }
.iw-page:not(.iw-page--admin-area) > .page-shell:has(> .owner-admin-bar) > .page-header { grid-row: 2; }
.iw-page:not(.iw-page--admin-area) > .page-shell:has(> .owner-admin-bar) > .page-main { grid-row: 3; }
.iw-page:not(.iw-page--admin-area) > .page-shell:has(> .owner-admin-bar) > .page-footer { grid-row: 4; }
.footer-links { display: flex; justify-content: center; gap: 14px; flex-wrap: wrap; }
.footer-links a { color: rgba(32,32,29,0.62); text-decoration: none; }
.design-settings, .wave-settings { min-height: 150px; align-content: start; display: grid; gap: 18px; }
.settings-control-panel { padding: 24px; }
.settings-control-panel .settings-section-head h2 { font-size: 1.16rem; }
.settings-control-panel .settings-section-head p { font-size: 0.92rem; }
.design-switch { width: min(100%, 260px); min-height: 34px; display: inline-flex; align-items: center; justify-content: flex-start; gap: 10px; color: var(--ink); cursor: pointer; outline: 0; -webkit-tap-highlight-color: transparent; }
.design-switch-label { min-width: 0; font-size: 0.9rem; font-weight: 760; white-space: nowrap; }
.design-switch-input { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
.design-switch-track { width: 44px; height: 24px; padding: 3px; display: flex; align-items: center; justify-content: flex-start; flex: 0 0 auto; border-radius: 999px; background: #c9d2dd; transition: background 0.18s ease; }
.design-switch-thumb { width: 18px; height: 18px; border-radius: 50%; background: #fff; box-shadow: 0 2px 6px rgba(0,0,0,0.18); transition: transform 0.18s ease; }
.design-switch-input:checked + .design-switch-track { background: var(--action); }
.design-switch-input:checked + .design-switch-track .design-switch-thumb { transform: translateX(20px); }
.design-switch:focus, .design-switch:focus-visible, .design-switch:focus-within, .design-switch-input:focus, .design-switch-input:focus-visible { outline: 0; }
.wave-mode-toggle { width: min(100%, 330px); min-height: 38px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px; padding: 4px; border-radius: 999px; background: rgba(250,246,237,0.72); box-shadow: inset 0 1px 0 rgba(255,255,255,0.62), 0 8px 24px rgba(75,70,58,0.08); }
.wave-mode-option { min-width: 0; min-height: 30px; display: inline-flex; align-items: center; justify-content: center; border: 0; border-radius: 999px; background: transparent; color: rgba(32,32,29,0.66); cursor: pointer; font: inherit; font-size: 0.86rem; font-weight: 760; }
.wave-mode-option.is-active { background: var(--action); color: #fff; box-shadow: 0 2px 10px rgba(var(--action-rgb),0.18); }
.wave-mode-option:focus, .wave-mode-option:focus-visible { outline: 0; }
:where(a, button, input, select, textarea, [tabindex]):focus-visible {
    outline: 3px solid rgba(var(--action-rgb), 0.62) !important;
    outline-offset: 3px !important;
}
.ai-api-settings { display: grid; gap: 28px; }
.settings-subsection { display: grid; gap: 12px; min-width: 0; }
.settings-subsection > h2 { margin: 0; color: var(--ink); font-family: "Manrope", system-ui, sans-serif; font-size: 1rem; line-height: 1.2; }
.settings-security-note { max-width: 760px; margin: -2px 0 4px; padding: 11px 14px; border-left: 3px solid #50c878; background: rgba(80,200,120,0.10); color: var(--muted); border-radius: 0 8px 8px 0; font-size: 0.88rem; line-height: 1.45; }
.settings-section-head { display: flex; align-items: start; justify-content: space-between; gap: 16px; }
.settings-section-head h1, .settings-section-head h2 { margin: 0; font-family: "Manrope", system-ui, sans-serif; line-height: 1.1; }
.settings-section-head h2 { font-size: 1.25rem; }
.settings-section-head p { margin: 8px 0 0; color: var(--muted); line-height: 1.45; }
.admin-page-editor { display: grid; gap: 22px; }
.editor-toolbar { display: flex; align-items: center; gap: 8px; }
.editor-global-hint { margin: -10px 0 0; }
.editor-field-audience { display: inline-flex; align-items: center; min-height: 22px; margin-right: 5px; padding: 2px 7px; border-radius: 999px; background: rgba(var(--action-rgb),0.10); color: var(--action); font-size: 0.72rem; font-weight: 800; }
.editor-meta, .editor-blocks { display: grid; gap: 16px; }
.editor-selected-page { display: flex; justify-content: space-between; align-items: center; gap: 18px; padding: 16px 18px; border: 1px solid var(--glass-border); border-left: 4px solid var(--action); border-radius: 12px; background: linear-gradient(115deg, rgba(var(--action-rgb),0.055), rgba(255,255,255,0.34) 52%); }
.editor-selected-page-copy { min-width: 0; }
.editor-selected-page h2 { max-width: 760px; margin: 2px 0 0; font-family: "Manrope", system-ui, sans-serif; font-size: clamp(1.16rem, 1.7vw, 1.5rem); line-height: 1.17; }
.editor-selected-page > div > p:last-child { margin: 6px 0 0; color: var(--muted); font-size: 0.84rem; }
.editor-selected-page-actions { flex: 0 0 auto; display: flex; align-items: center; gap: 7px; }
.editor-selected-page-actions .ghost-button { min-height: 38px; padding: 7px 11px; white-space: nowrap; }
.editor-meta-section, .editor-layout-controls { border: 1px solid var(--glass-border); border-radius: 8px; background: rgba(255,255,255,0.24); }
.editor-meta-section > summary, .editor-layout-controls > summary { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding: 14px 16px; cursor: pointer; font-weight: 900; list-style: none; }
.editor-meta-section > summary::-webkit-details-marker, .editor-layout-controls > summary::-webkit-details-marker { display: none; }
.editor-meta-section > summary::after, .editor-layout-controls > summary::after { content: "+"; color: var(--action); font-size: 1.25rem; }
.editor-meta-section[open] > summary::after, .editor-layout-controls[open] > summary::after { content: "−"; }
.editor-meta-section > summary small { margin-left: auto; color: var(--muted); font-weight: 600; }
.editor-meta-section .editor-meta { padding: 4px 16px 16px; }
.editor-block-list { display: grid; gap: 14px; }
.editor-block { display: grid; gap: 0; padding: 0; overflow: hidden; border-radius: 8px; background: var(--glass-child); border: 1px solid var(--glass-border); box-shadow: var(--child-shadow); backdrop-filter: blur(3px); -webkit-backdrop-filter: blur(3px); }
.editor-block-head { display: flex; align-items: start; justify-content: space-between; gap: 12px; }
.editor-block-head h2 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: 1.08rem; }
.editor-block-head p { margin: 4px 0 0; color: var(--muted); font-size: 0.84rem; }
.editor-block-toggle { flex: 1 1 auto; display: grid; gap: 4px; min-width: 0; padding: 16px 18px; border: 0; background: transparent; color: var(--ink); text-align: left; cursor: pointer; }
.editor-block-toggle p { max-width: 760px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.editor-block-toggle small { margin-top: 4px; color: var(--action); font-weight: 800; }
.editor-block-toggle[aria-expanded="true"] small span { display: inline-block; transform: rotate(180deg); }
.editor-block-head > .editor-block-actions { flex: 0 0 auto; padding: 14px 14px 0 0; }
.editor-block-form { display: grid; gap: 16px; padding: 18px; border-top: 1px solid var(--glass-line); }
.editor-block-form[hidden] { display: none; }
.editor-block-actions, .editor-block-controls { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.editor-save-options { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.editor-translation-sync { display: flex; align-items: flex-start; gap: 9px; max-width: 460px; cursor: pointer; }
.editor-translation-sync input { flex: 0 0 auto; width: 18px; height: 18px; margin-top: 2px; accent-color: var(--action); }
.editor-translation-sync span { display: grid; gap: 2px; }
.editor-translation-sync strong { color: var(--ink); font-size: 0.88rem; line-height: 1.3; }
.editor-translation-sync small { color: var(--muted); font-size: 0.76rem; line-height: 1.35; }
.editor-block-controls label { min-width: 120px; }
.editor-layout-controls { background: rgba(var(--action-rgb),0.035); }
.editor-layout-controls .editor-block-controls { padding: 4px 14px 10px; }
.editor-layout-controls > .help { margin: 0; padding: 0 14px 13px; }
.editor-page-content .field { align-content: start; }
.editor-page-content .field > span { font-weight: 850; }
.editor-page-content textarea { min-height: 0; height: auto; line-height: 1.45; }
.editor-field-state { color: var(--muted); font-size: 0.76rem; }
.editor-field-default { color: var(--muted); font-size: 0.76rem; }
.editor-field-default summary { width: max-content; color: var(--action); cursor: pointer; font-weight: 800; }
.editor-field-default p { margin: 7px 0 0; padding: 9px 10px; border-radius: 6px; background: rgba(0,0,0,0.035); line-height: 1.4; }
.editor-workspace { display: grid; grid-template-columns: minmax(210px, 280px) minmax(0, 1fr); gap: 18px; align-items: start; }
.editor-page-content { display: grid; gap: 18px; min-width: 0; container: editor-page / inline-size; }
.editor-view-index { position: sticky; top: 18px; display: grid; gap: 12px; max-height: calc(100vh - 36px); padding: 14px; overflow: auto; border: 1px solid var(--glass-border); border-radius: 8px; background: var(--glass-child); }
.editor-view-index-head { display: grid; gap: 8px; }
.editor-view-language { display: grid; grid-template-columns: auto minmax(0, 1fr); align-items: center; gap: 8px; color: var(--muted); font-size: 0.76rem; font-weight: 800; }
.editor-view-language select { min-height: 34px; padding-block: 4px; }
.editor-view-index-head h2, .editor-view-group h3 { margin: 0; font-family: "Manrope", system-ui, sans-serif; }
.editor-view-index-head h2 { font-size: 1.05rem; }
.editor-view-group { display: grid; gap: 5px; }
.editor-view-group h3 { margin-top: 7px; color: var(--muted); font-size: 0.76rem; text-transform: uppercase; letter-spacing: 0.06em; }
.editor-view-link { display: grid; gap: 2px; width: 100%; padding: 9px 10px; border: 1px solid transparent; border-radius: 7px; background: transparent; color: var(--ink); text-align: left; cursor: pointer; }
.editor-view-link:hover, .editor-view-link.is-active { border-color: var(--glass-border); background: rgba(var(--action-rgb),0.09); }
.editor-view-link small { color: var(--muted); font-size: 0.72rem; }
.editor-device-width { display: grid; grid-template-columns: auto 1fr minmax(58px, auto); gap: 7px; align-items: center; }
.editor-device-width > span:first-child { color: var(--action); font-size: 1.05rem; }
.editor-toggle { min-height: 46px; display: inline-flex; align-items: center; gap: 8px; }
.editor-visual-section { display: grid; gap: 14px; min-width: 0; }
.editor-canvas-toolbar { position: sticky; top: 8px; z-index: 15; display: grid; grid-template-columns: minmax(190px, 1fr) auto auto; grid-template-areas: "intro devices actions"; align-items: center; gap: 12px; padding: 11px 12px; border: 1px solid var(--glass-border); border-radius: 12px; background: rgba(250,248,243,0.96); box-shadow: 0 10px 28px rgba(29,28,25,0.08); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.editor-canvas-intro { grid-area: intro; min-width: 0; }
.editor-canvas-toolbar h2 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: 1.08rem; }
.editor-canvas-toolbar p { max-width: 420px; margin: 3px 0 0; color: var(--muted); font-size: 0.74rem; line-height: 1.35; }
.editor-journal-actions { grid-area: actions; justify-self: end; }
.editor-rich-toolbar { position: sticky; top: 91px; z-index: 14; display: grid; gap: 9px; padding: 11px 12px; border: 1px solid var(--glass-border); border-radius: 12px; background: rgba(250,248,243,0.97); box-shadow: 0 10px 28px rgba(29,28,25,0.08); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.editor-rich-toolbar-head { display: grid; grid-template-columns: minmax(180px, 1fr) auto; align-items: center; gap: 16px; }
.editor-rich-toolbar-head strong { color: var(--ink); font-size: 0.86rem; }
.editor-rich-toolbar-head small { color: var(--muted); font-size: 0.7rem; line-height: 1.35; }
.editor-rich-save-group { display: flex; align-items: center; justify-content: flex-end; gap: 9px; }
.editor-rich-save-action { display: grid; grid-template-columns: minmax(0, 160px) auto; align-items: center; gap: 8px; }
.editor-rich-save-action > small { text-align: right; }
.editor-rich-save-action .submit-button { min-height: 38px; padding: 7px 13px; white-space: nowrap; }
.editor-dirty-count { display: inline-grid; min-width: 20px; height: 20px; margin-left: 5px; padding: 0 5px; place-items: center; border-radius: 999px; background: rgba(255,255,255,0.24); font-size: 0.68rem; }
.editor-dirty-count[hidden] { display: none; }
.editor-rich-sync { display: inline-flex; align-items: center; gap: 8px; min-height: 38px; padding: 5px 9px; border: 1px solid rgba(var(--action-rgb),0.16); border-radius: 9px; background: rgba(255,255,255,0.52); color: var(--muted); cursor: pointer; }
.editor-rich-sync[hidden] { display: none; }
.editor-rich-sync input { width: 17px; height: 17px; accent-color: var(--action); }
.editor-rich-sync > span { display: grid; gap: 0; white-space: nowrap; }
.editor-rich-sync > span > strong { color: var(--ink); font-size: 0.72rem; line-height: 1.2; }
.editor-rich-sync > span > small { font-size: 0.62rem; }
.editor-rich-controls { display: grid; gap: 7px; min-width: 0; }
.editor-rich-control-row { display: flex; align-items: end; gap: 7px; min-width: 0; padding: 7px; border: 1px solid rgba(var(--action-rgb),0.10); border-radius: 9px; background: rgba(255,255,255,0.38); }
.editor-rich-typography-controls { flex-wrap: wrap; }
.editor-rich-link-controls { flex-wrap: wrap; background: rgba(var(--action-rgb),0.025); }
.editor-rich-control-row > label { flex: 0 0 auto; display: grid; gap: 3px; color: var(--muted); font-size: 0.65rem; font-weight: 800; }
.editor-rich-controls select, .editor-rich-controls input[type="text"] { min-height: 34px; padding: 5px 26px 5px 8px; border-radius: 7px; font-size: 0.72rem; }
.editor-rich-controls select { width: auto; min-width: 82px; }
.editor-rich-link-target { min-width: 190px; flex: 1 1 210px !important; }
.editor-rich-link-target input { width: 100%; min-width: 180px; }
.editor-rich-new-tab { display: inline-flex !important; align-items: center; gap: 6px; min-height: 34px; white-space: nowrap; }
.editor-rich-new-tab input { width: 16px; height: 16px; accent-color: var(--action); }
.editor-rich-button-group, .editor-rich-action-group { flex: 0 0 auto; display: inline-flex; gap: 4px; }
.editor-rich-button-group button, .editor-rich-action-group button { min-height: 34px; padding: 5px 9px; border: 1px solid rgba(var(--action-rgb),0.20); border-radius: 7px; background: rgba(255,255,255,0.72); color: var(--action); cursor: pointer; font: inherit; font-size: 0.72rem; font-weight: 820; }
.editor-rich-button-group button:hover, .editor-rich-action-group button:hover { border-color: var(--action); background: rgba(var(--action-rgb),0.10); }
.editor-rich-button-group button.is-active, .editor-rich-button-group button[aria-pressed="true"] { border-color: var(--action); background: var(--action); color: #fff; }
.editor-rich-button-group button:disabled, .editor-rich-action-group button:disabled { opacity: 0.38; cursor: default; }
.editor-rich-align-group button { display: grid; width: 34px; padding: 6px; place-items: center; }
.editor-rich-align-group svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; }
.editor-rich-source-toggle button { min-width: 42px; font-family: ui-monospace, "Cascadia Code", "SFMono-Regular", Consolas, monospace; letter-spacing: -0.08em; }
.editor-rich-source-toggle button svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.editor-rich-source-toggle button.is-active, .editor-rich-source-toggle button[aria-pressed="true"] { border-color: var(--action); background: var(--action); color: #fff; }
.editor-source-dialog { width: min(980px, calc(100vw - 48px)); height: min(70vh, 680px); min-width: min(480px, calc(100vw - 20px)); min-height: 320px; max-width: calc(100vw - 20px); max-height: calc(100vh - 20px); margin: auto; padding: 0; overflow: hidden; resize: both; border: 1px solid var(--glass-border); border-radius: 14px; background: var(--page-bg, #f6f0e3); color: var(--ink); box-shadow: 0 26px 80px rgba(29,28,25,0.30); }
.editor-source-dialog::backdrop { background: rgba(24,24,22,0.56); backdrop-filter: blur(3px); }
.editor-rich-source { position: relative; display: grid; grid-template-rows: auto minmax(0, 1fr) auto; gap: 11px; width: 100%; height: 100%; min-height: 0; padding: 16px 18px 18px; background: rgba(250,248,243,0.98); }
.editor-rich-source-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding-bottom: 10px; border-bottom: 1px solid var(--glass-line); }
.editor-rich-source-head h2 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: 1rem; }
.editor-rich-source-field { display: grid; grid-template-rows: minmax(0, 1fr) auto; gap: 7px; min-height: 0; color: var(--muted); font-size: 0.72rem; font-weight: 800; }
.editor-rich-source textarea { width: 100%; height: 100%; min-height: 180px; padding: 12px 13px; resize: none; border-radius: 8px; background: rgba(255,255,255,0.92); color: var(--ink); font: 0.78rem/1.55 ui-monospace, "Cascadia Code", "SFMono-Regular", Consolas, monospace; tab-size: 2; }
.editor-rich-source small { color: var(--muted); font-size: 0.68rem; font-weight: 620; line-height: 1.4; }
.editor-rich-source-actions { display: flex; justify-content: flex-end; gap: 8px; }
.editor-source-resize-handle { position: absolute; right: 5px; bottom: 5px; width: 18px; height: 18px; pointer-events: none; background: repeating-linear-gradient(135deg, transparent 0 3px, rgba(var(--action-rgb),0.58) 3px 5px); clip-path: polygon(100% 0, 100% 100%, 0 100%); opacity: 0.8; }
.editor-rich-toolbar[data-mode="none"] .editor-rich-controls { opacity: 0.45; }
.editor-rich-toolbar[data-mode="image"] .editor-rich-controls { display: none; }
.editor-component-central { display: grid; gap: 9px; padding-top: 10px; border-top: 1px dashed rgba(var(--action-rgb),0.28); }
.editor-component-central[hidden] { display: none; }
.editor-component-central > p { margin: 0; color: var(--muted); font-size: 0.72rem; }
.editor-component-central-fields { display: grid; grid-template-columns: minmax(160px, 0.34fr) minmax(260px, 1fr) auto; gap: 10px; align-items: end; }
.editor-component-central-fields textarea { min-height: 72px; resize: vertical; }
.editor-add-blocks { grid-area: actions; display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.editor-add-blocks > button { min-height: 38px; padding: 7px 11px; font-size: 0.76rem; white-space: nowrap; }
.editor-device-switch { grid-area: devices; display: inline-flex; align-items: center; gap: 4px; padding: 4px; border: 1px solid var(--glass-line); border-radius: 9px; background: rgba(255,255,255,0.56); }
.editor-device-switch button { display: grid; grid-template-columns: 20px auto; align-items: center; gap: 6px; min-height: 38px; padding: 7px 10px; border: 0; border-radius: 7px; background: transparent; color: var(--muted); cursor: pointer; font: inherit; font-size: 0.78rem; font-weight: 760; }
.editor-device-switch button:hover, .editor-device-switch button.is-active { background: var(--action); color: #fff; }
.editor-device-switch svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.editor-canvas-viewport { width: 100%; min-width: 0; padding: 22px; overflow: auto; border: 1px solid var(--glass-border); border-radius: 12px; background: rgba(255,255,255,0.28); box-shadow: inset 0 0 0 1px rgba(255,255,255,0.28); }
.editor-canvas { position: relative; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); grid-auto-flow: row; align-content: start; gap: 18px 14px; width: 100%; min-height: 148px; margin: 0 auto; transition: width 180ms ease, max-width 180ms ease; }
.editor-canvas-viewport[data-device="desktop"] .editor-canvas { max-width: 1180px; }
.editor-canvas-viewport[data-device="tablet"] .editor-canvas { width: 760px; max-width: 100%; }
.editor-canvas-viewport[data-device="mobile"] .editor-canvas { width: 390px; max-width: 100%; }
.editor-grid-slot { position: relative; z-index: 0; min-width: 0; min-height: 148px; border: 1px dashed rgba(var(--action-rgb),0.27); border-radius: 12px; background: rgba(var(--action-rgb),0.025); transition: border-color 120ms ease, background 120ms ease, box-shadow 120ms ease; }
.editor-canvas.is-reordering .editor-grid-slot { border-color: rgba(var(--action-rgb),0.46); background: rgba(var(--action-rgb),0.055); }
.editor-grid-slot.is-drop-slot { border-color: var(--action); background: rgba(var(--action-rgb),0.13); box-shadow: inset 0 0 0 2px rgba(var(--action-rgb),0.18), 0 7px 18px rgba(var(--action-rgb),0.10); }
.editor-grid-add { position: absolute; inset: 0; z-index: 1; width: 100%; min-height: 100%; border: 0; border-radius: inherit; background: transparent; color: rgba(var(--action-rgb),0.58); cursor: pointer; font: 500 2rem/1 "Manrope", system-ui, sans-serif; opacity: 0.48; transition: opacity 120ms ease, background 120ms ease, color 120ms ease; }
.editor-grid-add:hover, .editor-grid-add:focus-visible { background: rgba(var(--action-rgb),0.09); color: var(--action); opacity: 1; outline: 2px solid rgba(var(--action-rgb),0.35); outline-offset: -2px; }
.editor-grid-add:disabled { cursor: wait; opacity: 0.25; }
.editor-canvas-item { position: relative; z-index: 2; min-width: 0; align-self: start; border: 2px dashed rgba(var(--action-rgb),0.5); border-radius: 12px; background: rgba(255,255,255,0.54); transition: border-color 120ms ease, background 120ms ease, box-shadow 120ms ease; }
.editor-canvas-item:hover, .editor-canvas-item:focus-within, .editor-canvas-item.is-selected { border-color: var(--action); box-shadow: 0 12px 30px rgba(29,28,25,0.10); }
.editor-canvas-item.is-selected { background: rgba(var(--action-rgb),0.045); }
.editor-canvas-item.is-dragging { z-index: 20; opacity: 0.76; transform: scale(1.015); box-shadow: 0 18px 38px rgba(29,28,25,0.18); pointer-events: none; }
.editor-canvas-item.is-drop-target { border-color: var(--action); background: rgba(var(--action-rgb),0.10); box-shadow: 0 0 0 4px rgba(var(--action-rgb),0.12); }
.editor-canvas-item.is-drag-placeholder { border-color: var(--action); background: rgba(var(--action-rgb),0.08); box-shadow: inset 0 0 0 3px rgba(var(--action-rgb),0.10); }
.editor-canvas-item.is-drag-placeholder > * { opacity: 0.08; }
.editor-drag-ghost { position: fixed !important; top: 0 !important; right: auto !important; bottom: auto !important; left: 0 !important; z-index: 1000 !important; max-height: 72vh; margin: 0 !important; overflow: hidden; opacity: 0.94; pointer-events: none !important; box-shadow: 0 24px 60px rgba(29,28,25,0.26) !important; transform-origin: 0 0; will-change: transform; }
.editor-text-item.is-dirty { border-color: #d79527; background: rgba(255,248,226,0.76); }
.editor-element-toolbar, .editor-component-toolbar { display: flex; align-items: center; gap: 7px; min-width: 0; padding: 7px; border-bottom: 1px dashed rgba(var(--action-rgb),0.28); }
.editor-journal-canvas { grid-template-columns: 1fr; }
.editor-journal-entry { grid-column: 1 / -1 !important; }
.editor-journal-entry-meta { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; width: 100%; }
.editor-journal-entry-meta time { margin-right: auto; color: var(--muted); font-size: 0.76rem; }
.editor-journal-entry-meta a { color: var(--action); font-size: 0.78rem; }
.editor-journal-status { min-height: 32px; padding: 5px 10px; }
.editor-journal-status.is-published { border-color: rgba(44, 133, 91, 0.34); color: #24704d; }
.editor-element-toolbar label { flex: 0 0 auto; display: grid; grid-template-columns: auto auto; align-items: center; gap: 5px; color: var(--muted); font-size: 0.68rem; font-weight: 760; }
.editor-element-toolbar select { min-height: 32px; width: auto; min-width: 62px; padding: 4px 24px 4px 7px; border-radius: 6px; font-size: 0.74rem; }
.editor-drag-handle, .editor-remove-element { flex: 0 0 auto; display: inline-grid; place-items: center; width: 34px; height: 34px; padding: 0; border: 0; border-radius: 7px; background: rgba(var(--action-rgb),0.11); color: var(--action); cursor: grab; touch-action: none; user-select: none; -webkit-user-select: none; }
.editor-drag-handle:active { cursor: grabbing; }
.editor-drag-handle svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.editor-remove-element { margin-left: auto; color: #9f4d45; background: rgba(159,77,69,0.10); cursor: pointer; font-size: 1.25rem; }
.editor-span-badge { flex: 0 0 auto; min-width: 34px; color: var(--action); font-size: 0.7rem; font-weight: 860; text-align: center; }
.editor-element-sync { display: inline-flex !important; grid-template-columns: auto auto !important; }
.editor-element-sync input { width: 16px; height: 16px; margin: 0; accent-color: var(--action); }
.editor-edit-content { min-height: 32px; margin-left: auto; padding: 5px 10px; border: 1px solid rgba(var(--action-rgb),0.24); border-radius: 7px; background: rgba(var(--action-rgb),0.08); color: var(--action); cursor: pointer; font: inherit; font-size: 0.72rem; font-weight: 820; }
.editor-edit-content:hover, .editor-edit-content[aria-expanded="true"] { border-color: var(--action); background: var(--action); color: #fff; }
.editor-content-preview { display: grid; gap: 10px; min-height: 72px; padding: 18px 20px; overflow-wrap: anywhere; }
.editor-content-preview > :where(h1, h2, h3, h4, h5, h6, p, ul, ol) { margin: 0; line-height: 1.45; }
.editor-content-preview > :where(h1, h2, h3, h4, h5, h6) { font-family: "Manrope", system-ui, sans-serif; line-height: 1.15; }
.editor-content-preview > :where(ul, ol) { display: grid; gap: 5px; padding-left: 1.35em; }
.editor-content-preview > a { justify-self: start; pointer-events: none; }
.editor-rich-content, .editor-component-preview [data-rich-content] { --editor-device-factor: 1; overflow-wrap: anywhere; outline: none; cursor: text; }
.editor-rich-content { display: grid; align-content: start; gap: 10px; min-height: 112px; padding: 18px 20px; }
.editor-component-preview [data-component-field-mode="block"] { display: grid; gap: 8px; }
.editor-canvas-viewport[data-device="tablet"] :where(.editor-rich-content, .editor-component-preview [data-rich-content]) { --editor-device-factor: 0.9; }
.editor-canvas-viewport[data-device="mobile"] :where(.editor-rich-content, .editor-component-preview [data-rich-content]) { --editor-device-factor: 0.82; }
:where(.editor-rich-content, .editor-component-preview [data-component-field-mode="block"]) > [data-rich-block], .editor-component-preview [data-component-field-mode="inline"][data-rich-block] { margin: 0; font-size: calc(var(--editor-block-size, 16px) * var(--editor-device-factor)); font-weight: 400; line-height: 1.45; white-space: pre-wrap; }
:where(.editor-rich-content, .editor-component-preview [data-component-field-mode="block"]) > :where(h1, h2, h3, h4, h5, h6) { font-family: "Manrope", system-ui, sans-serif; line-height: 1.15; }
:where(.editor-rich-content, .editor-component-preview [data-rich-content]) [data-node-weight="light"] { font-weight: 300; }
:where(.editor-rich-content, .editor-component-preview [data-rich-content]) [data-node-weight="normal"] { font-weight: 400; }
:where(.editor-rich-content, .editor-component-preview [data-rich-content]) [data-node-weight="bold"] { font-weight: 700; }
:where(.editor-rich-content, .editor-component-preview [data-component-field-mode="block"]) > :where(ul, ol) { display: grid; gap: 5px; padding-inline-start: 1.35em; }
:where(.editor-rich-content, .editor-component-preview [data-rich-content]) a { cursor: text; }
:where(.editor-rich-content, .editor-component-preview [data-rich-content]) .editor-rich-run[data-page-size] { font-size: calc(var(--editor-run-size) * var(--editor-device-factor)); }
.editor-rich-weight-light { font-weight: 300; }
.editor-rich-weight-normal { font-weight: 400; }
.editor-rich-weight-bold { font-weight: 700; }
.editor-rich-italic { font-style: italic; }
.editor-rich-underline { text-decoration: underline; text-underline-offset: 0.12em; }
.editor-rich-content:empty::before { content: attr(aria-label); color: var(--muted); }
.editor-inline-media { position: relative; display: grid; gap: 6px; width: min(100%, var(--editor-media-width, 100%)); margin: 4px 0; padding: 7px; border: 1px dashed rgba(var(--action-rgb),0.34); border-radius: 9px; background: rgba(255,255,255,0.52); }
.editor-inline-media-left { justify-self: start; }
.editor-inline-media-center { justify-self: center; }
.editor-inline-media-right { justify-self: end; }
.editor-inline-media img { display: block; width: 100%; height: auto; border-radius: 7px; object-fit: contain; background: #fff; }
.editor-inline-media figcaption { min-height: 1.2em; color: var(--muted); font-size: 0.74rem; line-height: 1.35; outline: none; }
.editor-inline-media-remove { position: absolute; top: 13px; right: 13px; z-index: 3; display: grid; width: 32px; min-height: 32px; padding: 0; place-items: center; border: 1px solid rgba(159,77,69,0.20); border-radius: 8px; background: rgba(250,242,239,0.94); color: #a34f47; box-shadow: 0 4px 14px rgba(63,36,31,0.12); cursor: pointer; font: 800 1.15rem/1 "Manrope", system-ui, sans-serif; opacity: 0.88; transition: opacity 120ms ease, background 120ms ease, transform 120ms ease; }
.editor-inline-media-remove:hover, .editor-inline-media-remove:focus-visible { background: #fff4f0; opacity: 1; outline: 2px solid rgba(159,77,69,0.28); outline-offset: 2px; transform: scale(1.04); }
.editor-content-panel { display: grid; gap: 12px; padding: 14px; border-top: 1px dashed rgba(var(--action-rgb),0.3); background: rgba(var(--action-rgb),0.025); }
.editor-content-panel[hidden] { display: none; }
.editor-content-add { display: flex; flex-wrap: wrap; gap: 6px; }
.editor-content-add button, .editor-content-node-actions button { min-height: 30px; padding: 4px 8px; border: 1px solid rgba(var(--action-rgb),0.22); border-radius: 7px; background: rgba(255,255,255,0.72); color: var(--action); cursor: pointer; font: inherit; font-size: 0.7rem; font-weight: 790; }
.editor-content-add button:hover, .editor-content-node-actions button:hover { border-color: var(--action); background: rgba(var(--action-rgb),0.1); }
.editor-content-node { display: grid; gap: 10px; padding: 12px; border: 1px solid var(--glass-border); border-radius: 9px; background: rgba(255,255,255,0.58); box-shadow: var(--child-shadow); }
.editor-content-node + .editor-content-node { margin-top: 10px; }
.editor-content-node-toolbar { display: grid; grid-template-columns: minmax(116px, 1.3fr) minmax(94px, 0.7fr) minmax(94px, 0.7fr) auto; gap: 8px; align-items: end; }
.editor-content-node-toolbar label { display: grid; gap: 4px; min-width: 0; color: var(--muted); font-size: 0.67rem; font-weight: 800; }
.editor-content-node-toolbar select { width: 100%; min-height: 34px; padding: 5px 26px 5px 8px; font-size: 0.72rem; }
.editor-content-node-actions { display: inline-flex; gap: 4px; align-items: center; }
.editor-content-node-actions button { width: 30px; padding: 0; }
.editor-content-node-actions button:last-child { color: #9f4d45; }
.editor-content-node-actions button:disabled { opacity: 0.35; cursor: default; }
.editor-content-value textarea { min-height: 74px; resize: vertical; }
.editor-content-link-settings { display: grid; grid-template-columns: minmax(170px, 1fr) auto minmax(120px, 0.45fr); gap: 10px; align-items: end; }
.editor-content-check { display: flex; align-items: center; gap: 7px; min-height: 42px; color: var(--muted); font-size: 0.72rem; font-weight: 760; }
.editor-content-check input { width: 16px; height: 16px; accent-color: var(--action); }
.editor-content-footer { display: flex; align-items: center; justify-content: flex-end; gap: 10px; padding-top: 2px; }
.editor-content-footer > small { margin-right: auto; color: var(--muted); font-size: 0.7rem; }
.editor-text-content { min-height: 78px; padding: 18px 20px; color: var(--ink); line-height: 1.5; overflow-wrap: anywhere; outline: none; white-space: pre-wrap; }
.editor-text-content.is-heading { font-family: "Manrope", system-ui, sans-serif; line-height: 1.15; }
.editor-text-content:empty::before { content: attr(data-placeholder); color: var(--muted); }
.editor-text-footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 44px; padding: 6px 9px 9px 14px; }
.editor-text-footer small { color: var(--muted); font-size: 0.7rem; }
.editor-text-footer .ghost-button { min-height: 34px; padding: 6px 10px; font-size: 0.74rem; }
.editor-resize-handle { position: absolute; top: 42px; bottom: 0; z-index: 8; width: 12px; padding: 0; border: 0; background: transparent; cursor: ew-resize; touch-action: none; }
.editor-resize-handle::after { position: absolute; top: 50%; width: 3px; height: 38px; border-radius: 99px; background: rgba(var(--action-rgb),0.34); content: ""; transform: translateY(-50%); }
.editor-resize-handle:hover::after, .editor-resize-handle:focus::after { background: var(--action); }
.editor-resize-left { left: -7px; }
.editor-resize-left::after { left: 4px; }
.editor-resize-right { right: -7px; }
.editor-resize-right::after { right: 4px; }
.editor-component-item { border-style: solid; border-color: rgba(var(--action-rgb),0.20); }
.editor-component-toolbar { color: var(--muted); font-size: 0.72rem; }
.editor-component-preview { min-width: 0; padding: 14px; overflow: hidden; }
.editor-component-preview .page-block { grid-column: 1 / -1; }
.editor-component-preview script { display: none; }
.editor-component-preview :where(input, textarea, select, button) { pointer-events: none; }
.editor-component-preview [data-component-field-name] { border-radius: 3px; outline: 1px dashed transparent; outline-offset: 3px; cursor: text; }
.editor-component-preview [data-component-field-name]:hover, .editor-component-preview [data-component-field-name]:focus { outline-color: rgba(var(--action-rgb),0.66); background: rgba(var(--action-rgb),0.07); }
.editor-component-preview [data-component-field-name] { pointer-events: auto; }
.editor-component-preview [data-component-field-mode="inline"] { display: inline; }
.editor-auth-variant-preview { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.editor-auth-variant-card { min-width: 0; padding: 12px; border: 1px solid rgba(var(--action-rgb),0.2); border-radius: 12px; background: rgba(255,255,255,0.46); }
.editor-auth-variant-label { display: inline-flex; margin-bottom: 10px; padding: 3px 8px; border-radius: 999px; background: rgba(var(--action-rgb),0.1); color: var(--action); font-size: 11px; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; }
.editor-canvas-viewport[data-device="mobile"] .editor-auth-variant-preview { grid-template-columns: 1fr; }
.page-component-rich-field > :first-child { margin-top: 0; }
.page-component-rich-field > :last-child { margin-bottom: 0; }
.editor-component-copy-editor { border-top: 1px dashed rgba(var(--action-rgb),0.28); }
.editor-component-copy-editor > summary { padding: 11px 14px; color: var(--action); cursor: pointer; font-size: 0.78rem; font-weight: 830; }
.editor-component-copy-hint { margin: 0; padding: 2px 14px 8px; color: var(--muted); font-size: 0.72rem; }
.editor-component-field-picker { display: grid; grid-template-columns: minmax(180px, 0.45fr) minmax(0, 1fr); gap: 12px; padding: 4px 14px 14px; }
.editor-component-copy-field { min-width: 0; }
.editor-component-copy-field textarea { min-height: 82px; resize: vertical; }
.editor-component-copy-field small { display: block; margin-top: 5px; color: var(--muted); font-size: 0.68rem; line-height: 1.35; }
.editor-component-copy-actions { padding: 0 14px 14px; }
.editor-component-copy-actions > small { margin-right: auto; color: var(--muted); }
.editor-component-no-copy { margin: 0; padding: 0 14px 14px; color: var(--muted); font-size: 0.74rem; }
.page-editable-image { width: 100%; margin: 0; overflow: hidden; border-radius: 10px; background: #fff; }
.page-editable-image img { display: block; width: 100%; height: auto; object-fit: contain; }
.editor-hidden-elements { border: 1px solid var(--glass-border); border-radius: 9px; background: rgba(255,255,255,0.28); }
.editor-hidden-elements > summary { padding: 12px 14px; cursor: pointer; font-weight: 820; }
.editor-hidden-elements > div { display: grid; gap: 7px; padding: 0 12px 12px; }
.editor-hidden-element { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 9px 10px; border-radius: 7px; background: rgba(0,0,0,0.035); }
.editor-hidden-element span { min-width: 0; overflow: hidden; color: var(--muted); text-overflow: ellipsis; white-space: nowrap; }
.editor-media-dialog { width: min(1040px, calc(100vw - 32px)); height: min(720px, calc(100vh - 32px)); max-height: calc(100vh - 32px); padding: 0; overflow: hidden; border: 1px solid var(--glass-border); border-radius: 14px; background: var(--page-bg, #f6f0e3); color: var(--ink); box-shadow: 0 26px 80px rgba(29,28,25,0.28); }
.editor-media-dialog::backdrop { background: rgba(24,24,22,0.54); backdrop-filter: blur(3px); }
.editor-media-shell { display: grid; height: 100%; max-height: calc(100vh - 32px); grid-template-rows: auto minmax(0, 1fr); }
.editor-media-head { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 17px 19px; border-bottom: 1px solid var(--glass-line); }
.editor-media-head p, .editor-media-head h2 { margin: 0; }
.editor-media-head h2 { margin-top: 2px; font-family: "Manrope", system-ui, sans-serif; font-size: 1.15rem; }
.editor-media-close { display: grid; width: 36px; height: 36px; padding: 0; place-items: center; border: 0; border-radius: 8px; background: rgba(159,77,69,0.1); color: #9f4d45; cursor: pointer; font-size: 1.35rem; }
.editor-media-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, 0.4fr); min-height: 0; overflow: hidden; }
.editor-media-browser { display: grid; grid-template-rows: auto minmax(0, 1fr); gap: 12px; min-height: 0; padding: 17px; border-right: 1px solid var(--glass-line); }
.editor-media-upload { display: flex; align-items: center; gap: 10px; }
.editor-media-upload span { color: var(--muted); font-size: 0.74rem; }
.editor-media-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(126px, 1fr)); grid-auto-rows: max-content; align-content: start; align-items: start; gap: 10px; min-height: 0; padding-right: 4px; overflow: auto; }
.editor-media-item { align-self: start; display: grid; grid-template-rows: auto auto; align-content: start; gap: 6px; min-width: 0; height: auto; padding: 7px; border: 2px solid transparent; border-radius: 9px; background: rgba(255,255,255,0.54); color: var(--ink); text-align: left; cursor: pointer; }
.editor-media-item:hover, .editor-media-item.is-selected { border-color: var(--action); background: rgba(var(--action-rgb),0.08); }
.editor-media-item img { display: block; width: 100%; aspect-ratio: 4 / 3; border-radius: 6px; object-fit: contain; background: #fff; }
.editor-media-item span { overflow: hidden; font-size: 0.7rem; font-weight: 760; text-overflow: ellipsis; white-space: nowrap; }
.editor-media-settings { display: grid; align-content: start; gap: 12px; padding: 17px; overflow: auto; }
.editor-media-options { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.editor-media-actions { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 8px; }
.editor-media-remove { margin-right: auto; color: #9f4d45; background: rgba(159,77,69,0.10); }
.editor-media-remove[hidden] { display: none; }
@media (max-width: 720px) {
    .editor-media-dialog { width: calc(100vw - 18px); height: calc(100vh - 18px); max-height: calc(100vh - 18px); }
    .editor-media-shell { max-height: calc(100vh - 18px); }
    .editor-media-layout { grid-template-columns: 1fr; overflow: auto; }
    .editor-media-browser { min-height: 280px; border-right: 0; border-bottom: 1px solid var(--glass-line); }
    .editor-media-grid { max-height: 42vh; }
}
.ai-add-provider-button:disabled { opacity: 0.5; cursor: not-allowed; }
.ai-provider-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.plan-status-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.plan-status-grid > div { min-width: 0; padding: 14px; border-radius: 8px; background: rgba(250,227,0,0.08); border: 1px solid rgba(255,255,255,0.34); }
.plan-status-grid span, .plan-status-grid small { display: block; color: var(--muted); font-size: 0.82rem; }
.plan-status-grid strong { display: block; margin: 4px 0; font-size: 1rem; }
.plan-status-grid .is-locked, .ai-key-form.is-locked { opacity: 0.72; }
.ai-key-form button:disabled { cursor: not-allowed; opacity: 0.5; }
.ai-key-form input:disabled { cursor: not-allowed; opacity: 0.62; }
.ai-provider-card { display: grid; gap: 14px; min-width: 0; padding: 18px; border-radius: 8px; background: rgba(250,246,237,0.48); border: 1px solid rgba(255,255,255,0.38); box-shadow: inset 0 1px 0 rgba(255,255,255,0.48); }
.ai-provider-card-head { display: flex; align-items: start; justify-content: space-between; gap: 12px; }
.ai-provider-card-head h2 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: 1.1rem; }
.ai-provider-card-head p, .ai-provider-card-head span, .ai-provider-meta, .ai-key-status, .ai-usage-row small { color: var(--muted); font-size: 0.82rem; }
.ai-provider-card-head p { margin: 4px 0 0; word-break: break-word; }
.ai-provider-card-head span { flex: 0 0 auto; padding: 4px 8px; border-radius: 999px; background: var(--action-weak); }
.ai-provider-meta { display: flex; gap: 8px; flex-wrap: wrap; }
.ai-provider-meta span { padding: 5px 8px; border-radius: 999px; background: rgba(250,246,237,0.60); }
.ai-key-form { display: grid; gap: 8px; padding-top: 10px; border-top: 1px solid rgba(32,32,29,0.08); }
.ai-key-form label { display: grid; gap: 7px; }
.ai-key-actions { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
.ai-key-status { margin-right: auto; }
.ai-usage-panel { display: grid; gap: 12px; padding-top: 8px; }
.ai-usage-list { display: grid; gap: 8px; }
.ai-usage-row { display: grid; grid-template-columns: minmax(0, 1fr) repeat(3, minmax(72px, auto)); gap: 12px; align-items: center; padding: 12px; border-radius: 8px; background: rgba(250,246,237,0.52); }
.ai-usage-row strong, .ai-usage-row small { display: block; }
.ai-api-settings .plan-status-grid { gap: 0; border-top: 1px solid var(--glass-line); border-bottom: 1px solid var(--glass-line); }
.ai-api-settings .plan-status-grid > div { min-height: 72px; padding: 12px 16px; border: 0; border-right: 1px solid var(--glass-line); border-radius: 0; background: transparent; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; }
.ai-api-settings .plan-status-grid > div:last-child { border-right: 0; }
.ai-api-settings .ai-provider-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; border-top: 0; }
.ai-api-settings .ai-provider-card { display: grid; grid-template-columns: 1fr; gap: 10px; padding: 14px; border: 1px solid var(--glass-border); border-radius: 8px; background: var(--glass-child); box-shadow: var(--child-shadow); backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.ai-api-settings .ai-provider-card-head { display: flex; align-items: start; justify-content: space-between; gap: 14px; }
.ai-api-settings .ai-provider-card-head h2 { font-size: 1rem; }
.ai-api-settings .ai-provider-card-head p { max-width: 460px; line-height: 1.35; }
.ai-api-settings .ai-provider-card-head small { display: block; margin-top: 4px; color: var(--muted); font-size: 0.78rem; }
.ai-api-settings .ai-provider-card-head span, .ai-api-settings .ai-provider-meta span { border-radius: 999px; }
.ai-provider-status { display: inline-flex; align-items: center; gap: 6px; min-height: 28px; padding: 0 10px; white-space: nowrap; }
.ai-provider-status i { width: 8px; height: 8px; border-radius: 999px; background: rgba(32,32,29,0.34); }
.ai-provider-status.is-connected i { background: #50c878; box-shadow: 0 0 0 4px rgba(80,200,120,0.14); }
.ai-api-settings .ai-provider-meta { display: flex; gap: 6px; flex-wrap: wrap; }
.ai-api-settings .ai-provider-meta span { padding: 4px 8px; font-size: 0.76rem; }
.ai-key-chip-row { display: flex; gap: 7px; flex-wrap: wrap; }
.ai-key-chip { min-height: 26px; display: inline-flex; align-items: center; border-radius: 999px; padding: 0 9px; background: rgba(250,246,237,0.54); color: var(--muted); font-size: 0.78rem; font-weight: 780; }
.ai-key-chip.is-connected { background: rgba(80,200,120,0.14); color: #2f7d48; }
.ai-key-form-list { display: grid; gap: 10px; }
.ai-api-settings .ai-key-form { display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: end; gap: 8px; padding: 10px; border: 1px solid var(--glass-line); border-radius: 8px; background: rgba(255,255,255,0.30); }
.ai-api-settings .ai-key-form label { min-width: 0; }
.ai-api-settings .ai-key-form label span { color: var(--muted); font-size: 0.82rem; font-weight: 800; }
.ai-api-settings .ai-key-form input { height: 42px; background: rgba(255,255,255,0.52); }
.ai-api-settings .ai-key-actions { justify-content: flex-start; gap: 7px; }
.ai-api-settings .ai-key-actions .ghost-button, .ai-api-settings .ai-key-actions .delete-button { min-height: 34px; padding: 0 10px; }
.ai-api-settings .ai-key-status { margin: 0 auto 0 0; color: var(--muted); font-size: 0.78rem; }
.ai-api-settings .ai-key-status::before { content: "○ "; }
.ai-api-settings .ai-key-status.is-connected::before { content: "● "; color: #50c878; }
.ai-delete-link { color: #9f5d54; background: rgba(159,93,84,0.08); }
.ai-byok-locked { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px; border-radius: 8px; background: rgba(250,246,237,0.46); color: var(--muted); font-size: 0.82rem; }
.ai-byok-locked::before { content: "Lock"; color: var(--action); font-size: 0.72rem; font-weight: 860; text-transform: uppercase; }
.ai-byok-locked-wide { grid-column: 1 / -1; }
.ai-api-settings .ai-usage-list { gap: 0; border-top: 1px solid var(--glass-line); }
.ai-api-settings .ai-usage-row { padding: 12px 0; border: 0; border-bottom: 1px solid var(--glass-line); border-radius: 0; background: transparent; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; }
.admin-ai-provider-summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin: 18px 0 12px; padding: 12px 14px; border-radius: 8px; background: rgba(250,246,237,0.58); border: 1px solid var(--glass-border); }
.admin-ai-provider-summary span { display: block; color: var(--muted); font-size: 0.76rem; font-weight: 820; text-transform: uppercase; letter-spacing: 0.04em; }
.admin-ai-provider-summary strong { display: block; margin-top: 3px; color: var(--ink); font-size: 1rem; }
.admin-ai-provider-summary p { max-width: 420px; font-size: 0.82rem; text-align: right; }
.admin-operations { display: grid; gap: 14px; }
.admin-operations-hero { display: grid; gap: 16px; }
.admin-operations-eyebrow { display: block; margin-bottom: 5px; color: var(--action); font-size: 0.7rem; font-weight: 880; letter-spacing: 0.1em; }
.admin-operations-links { display: flex; flex-wrap: wrap; gap: 7px; }
.admin-operations-links a { min-height: 34px; display: inline-flex; align-items: center; padding: 0 10px; border-radius: 8px; background: var(--glass-child); color: var(--action); font-size: 0.78rem; font-weight: 800; text-decoration: none; }
.admin-operations-control-grid { display: grid; grid-template-columns: minmax(190px, 0.72fr) minmax(300px, 1.28fr); gap: 10px; }
.admin-operations-balance, .admin-operations-runtime { min-width: 0; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 13px; border: 1px solid var(--glass-border); border-radius: 8px; background: var(--glass-child); }
.admin-operations-balance { display: grid; gap: 3px; }
.admin-operations-balance span, .admin-operations-runtime span { color: var(--muted); font-size: 0.7rem; font-weight: 820; text-transform: uppercase; letter-spacing: 0.05em; }
.admin-operations-balance strong, .admin-operations-runtime strong { display: block; color: var(--ink); font-size: 1.06rem; }
.admin-operations-balance small, .admin-operations-runtime small { display: block; margin-top: 2px; color: var(--muted); font-size: 0.72rem; line-height: 1.35; }
.admin-operations-runtime.is-off { border-color: rgba(159,93,84,0.32); background: rgba(159,93,84,0.09); }
.admin-operations-runtime form { flex: 0 0 auto; margin: 0; }
.admin-operations-stats { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.admin-operations-stats article { display: grid; gap: 3px; padding: 14px; }
.admin-operations-stats span { color: var(--muted); font-size: 0.72rem; font-weight: 800; }
.admin-operations-stats strong { color: var(--ink); font-family: "Manrope", system-ui, sans-serif; font-size: 1.32rem; }
.admin-operations-stats small { color: var(--muted); font-size: 0.68rem; line-height: 1.35; }
.admin-operations-users { display: grid; gap: 14px; }
.admin-operations-users > .settings-section-head > small { color: var(--muted); font-size: 0.72rem; }
.admin-operations-table-wrap { overflow-x: auto; border: 1px solid var(--glass-line); border-radius: 8px; }
.admin-operations-table-wrap table { width: 100%; border-collapse: collapse; font-size: 0.78rem; }
.admin-operations-table-wrap th, .admin-operations-table-wrap td { padding: 10px 11px; border-bottom: 1px solid var(--glass-line); text-align: left; vertical-align: top; white-space: nowrap; }
.admin-operations-table-wrap th { color: var(--muted); font-size: 0.67rem; text-transform: uppercase; letter-spacing: 0.04em; }
.admin-operations-table-wrap tbody tr:last-child td { border-bottom: 0; }
.admin-operations-table-wrap td:first-child { white-space: normal; }
.admin-operations-table-wrap td strong, .admin-operations-table-wrap td small { display: block; }
.admin-operations-table-wrap td small { margin-top: 2px; color: var(--muted); font-size: 0.67rem; }
.admin-operations-table-wrap td form { display: grid; gap: 7px; min-width: 270px; }
.admin-operations-table-wrap td form input { min-height: 36px; padding: 7px 9px; border: 1px solid var(--glass-border); border-radius: 7px; background: var(--glass-child); color: var(--ink); }
.admin-operations-table-wrap .community-point-value { width: 110px; min-height: 36px; padding: 7px 9px; border: 1px solid var(--glass-border); border-radius: 7px; background: var(--glass-child); color: var(--ink); }
.admin-operations-support-actions { display: flex; flex-wrap: wrap; gap: 6px; }
.admin-operations-support-actions button { min-height: 34px; padding: 6px 9px; font-size: 0.7rem; }
[data-import-support-status] { color: var(--muted); font-size: 0.72rem; }
@media (max-width: 820px) {
    .admin-operations-control-grid, .admin-operations-stats { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 560px) {
    .admin-operations-control-grid, .admin-operations-stats { grid-template-columns: 1fr; }
    .admin-operations-runtime { align-items: stretch; flex-direction: column; }
    .admin-operations-runtime form, .admin-operations-runtime button { width: 100%; }
}
.admin-ai-provider-list { display: grid; gap: 12px; }
.admin-ai-provider-card { display: grid; gap: 12px; padding: 14px; border: 1px solid var(--glass-border); border-radius: 8px; background: var(--glass-child); transition: opacity 0.16s ease; }
.admin-ai-provider-card.is-saving { opacity: 0.68; }
.admin-ai-provider-head { display: flex; align-items: start; justify-content: space-between; gap: 14px; padding-bottom: 10px; border-bottom: 1px solid var(--glass-line); }
.admin-ai-provider-card h2 { margin: 0; font-size: 1.08rem; }
.admin-ai-provider-card p { margin: 4px 0 0; color: var(--muted); font-size: 0.84rem; }
.admin-ai-provider-status { flex: 0 0 auto; min-height: 28px; display: inline-flex; align-items: center; border-radius: 999px; padding: 0 10px; background: rgba(159,93,84,0.10); color: #9f5d54; font-size: 0.78rem; font-weight: 850; }
.admin-ai-provider-status.is-active { background: rgba(46,139,87,0.13); color: #2e8b57; }
.admin-ai-provider-fields { display: grid; grid-template-columns: minmax(180px, 1.2fr) minmax(86px, 0.46fr) repeat(2, minmax(110px, 0.65fr)) repeat(2, minmax(150px, 0.95fr)) minmax(90px, 0.48fr) minmax(160px, 0.9fr) minmax(190px, 1fr); gap: 10px; align-items: end; }
.admin-ai-provider-card label { display: grid; gap: 5px; min-width: 0; color: var(--muted); font-size: 0.78rem; font-weight: 760; }
.admin-ai-provider-card input { height: 38px; width: 100%; }
.admin-ai-provider-meta { display: flex; gap: 8px; flex-wrap: wrap; color: var(--muted); font-size: 0.78rem; }
.admin-ai-provider-meta span { min-height: 28px; display: inline-flex; align-items: center; padding: 0 9px; border-radius: 999px; background: rgba(250,246,237,0.52); }
.admin-ai-toggle { display: inline-flex !important; align-items: center; grid-template-columns: none !important; min-height: 38px; padding: 0 10px; border-radius: 8px; background: rgba(250,246,237,0.54); color: var(--ink) !important; }
.admin-ai-toggle input { width: auto; height: auto; margin: 0; }
.admin-ai-provider-actions { display: flex; align-items: center; justify-content: flex-end; gap: 8px; padding-top: 10px; border-top: 1px solid var(--glass-line); }
.admin-ai-usage-panel { display: grid; gap: 16px; margin-top: 18px; }
.admin-ai-usage-controls { display: flex; align-items: end; gap: 8px; flex-wrap: wrap; }
.admin-ai-usage-controls label { display: grid; gap: 5px; color: var(--muted); font-size: 0.78rem; font-weight: 760; }
.admin-ai-usage-controls select { height: 38px; min-width: 120px; }
.admin-ai-usage-summary { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; }
.admin-ai-usage-summary article { min-width: 0; padding: 14px; border-radius: 8px; background: var(--glass-child); border: 1px solid var(--glass-border); box-shadow: var(--child-shadow); }
.admin-ai-usage-summary span, .admin-ai-usage-summary small, .admin-ai-usage-table small, .admin-ai-usage-recent-row small { display: block; color: var(--muted); font-size: 0.78rem; font-weight: 780; }
.admin-ai-usage-summary strong { display: block; margin-top: 4px; color: var(--ink); font-family: "Manrope", system-ui, sans-serif; font-size: 1.35rem; line-height: 1.1; overflow-wrap: anywhere; }
.admin-ai-usage-summary small { margin-top: 5px; }
.admin-ai-usage-table-wrap { overflow-x: auto; border: 1px solid var(--glass-border); border-radius: 8px; background: rgba(250,246,237,0.34); }
.admin-ai-usage-table { width: 100%; min-width: 980px; border-collapse: collapse; }
.admin-ai-usage-table th, .admin-ai-usage-table td { padding: 11px 12px; border-bottom: 1px solid var(--glass-line); text-align: left; vertical-align: top; }
.admin-ai-usage-table th { color: var(--muted); font-size: 0.76rem; font-weight: 860; text-transform: uppercase; letter-spacing: 0.04em; background: rgba(250,246,237,0.56); }
.admin-ai-usage-table td strong { display: block; color: var(--ink); font-size: 0.9rem; line-height: 1.35; overflow-wrap: anywhere; }
.admin-ai-usage-table td small { margin-top: 3px; line-height: 1.35; overflow-wrap: anywhere; }
.admin-ai-usage-badge { display: inline-flex; align-items: center; min-height: 20px; margin-left: 4px; padding: 0 7px; border-radius: 999px; background: rgba(70,128,200,0.12); color: var(--accent); font-size: 0.68rem; font-weight: 850; }
.admin-ai-usage-recent, .admin-ai-usage-users { display: grid; gap: 9px; }
.admin-ai-usage-recent h3, .admin-ai-usage-users h3 { margin: 0; font-size: 1rem; }
.admin-ai-usage-users p { margin: 0; color: var(--muted); font-size: 0.86rem; }
.admin-ai-usage-recent-list { display: grid; gap: 8px; }
.admin-ai-usage-recent-row { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr) minmax(140px, 0.55fr); gap: 10px; align-items: start; padding: 12px; border-radius: 8px; background: var(--glass-child); border: 1px solid var(--glass-border); }
.admin-ai-usage-recent-row strong { display: block; color: var(--ink); font-size: 0.88rem; overflow-wrap: anywhere; }
.admin-policy-page { display: grid; gap: 18px; }
.admin-policy-stat-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-top: 18px; }
.admin-policy-stat-grid > div { min-width: 0; padding: 14px; border-radius: 8px; background: var(--glass-child); border: 1px solid var(--glass-border); box-shadow: var(--child-shadow); }
.admin-policy-stat-grid span { display: block; color: var(--muted); font-size: 0.78rem; font-weight: 820; }
.admin-policy-stat-grid strong { display: block; margin-top: 4px; font-family: "Manrope", system-ui, sans-serif; font-size: 1.35rem; line-height: 1; }
.admin-policy-stat-grid .is-warning { background: rgba(255,111,145,0.12); border-color: rgba(255,111,145,0.26); }
.admin-policy-safeguards { display: flex; gap: 8px; flex-wrap: wrap; margin-top: 14px; }
.admin-policy-safeguards span { display: inline-flex; align-items: center; min-height: 30px; padding: 0 10px; border-radius: 999px; background: rgba(250,246,237,0.58); color: var(--muted); font-size: 0.78rem; font-weight: 780; }
.admin-policy-simulator { display: grid; grid-template-columns: minmax(220px, 1fr) auto; gap: 10px; align-items: end; margin-top: 16px; }
.admin-policy-simulator label { display: grid; gap: 6px; color: var(--muted); font-size: 0.82rem; font-weight: 800; }
.admin-policy-simulator output { grid-column: 1 / -1; min-height: 0; }
.admin-policy-cache-job { display: grid; gap: 12px; margin-top: 20px; padding-top: 16px; border-top: 1px solid var(--glass-line); }
.admin-policy-cache-grid { display: grid; grid-template-columns: minmax(180px, 1.2fr) minmax(160px, 1fr) minmax(90px, 0.4fr) repeat(3, auto); gap: 10px; align-items: end; }
.admin-policy-cache-grid label { display: grid; gap: 6px; color: var(--muted); font-size: 0.82rem; font-weight: 800; }
.admin-policy-cache-grid label:has(input[type="checkbox"]) { display: flex; align-items: center; min-height: 42px; padding: 0 10px; border-radius: 8px; background: rgba(255,255,255,0.24); color: var(--ink); }
.admin-policy-cache-grid input[type="checkbox"] { width: auto; min-height: 0; }
.admin-policy-cache-job output { min-height: 0; }
.admin-policy-cache-report { display: grid; gap: 9px; padding: 12px; border-radius: 8px; background: rgba(250,246,237,0.52); border: 1px solid var(--glass-border); }
.admin-policy-cache-report-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.admin-policy-cache-report-head strong { font-family: "Manrope", system-ui, sans-serif; }
.admin-policy-cache-report-head span { display: inline-flex; align-items: center; min-height: 26px; padding: 0 9px; border-radius: 999px; background: rgba(72,139,211,0.14); color: var(--link); font-size: 0.74rem; font-weight: 860; }
.admin-policy-cache-product-list { display: grid; gap: 7px; }
.admin-policy-cache-product { display: grid; gap: 6px; padding: 9px; border-radius: 8px; background: rgba(255,255,255,0.24); border: 1px solid rgba(255,255,255,0.24); }
.admin-policy-cache-product > strong { font-family: "Manrope", system-ui, sans-serif; }
.admin-policy-cache-history { display: grid; gap: 10px; margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--glass-line); }
.admin-policy-cache-history-list { display: grid; gap: 9px; }
.admin-policy-cache-history-item { display: grid; gap: 8px; padding: 12px; border-radius: 8px; background: rgba(250,246,237,0.50); border: 1px solid var(--glass-border); }
.admin-policy-cache-history-item.is-error { border-color: rgba(255,111,145,0.34); }
.admin-policy-cache-history-item.is-dry-run { border-color: rgba(72,139,211,0.24); }
.admin-policy-cache-history-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.admin-policy-cache-history-head strong { font-family: "Manrope", system-ui, sans-serif; }
.admin-policy-cache-history-head span { display: inline-flex; align-items: center; min-height: 26px; padding: 0 9px; border-radius: 999px; background: rgba(72,139,211,0.14); color: var(--link); font-size: 0.74rem; font-weight: 860; }
.admin-policy-cache-history-item.is-error .admin-policy-cache-history-head span { background: rgba(255,111,145,0.14); color: #9f4560; }
.admin-policy-cache-history-item small { color: var(--muted); word-break: break-word; }
.admin-policy-simulation { display: grid; gap: 7px; margin-top: 2px; padding: 12px; border-radius: 8px; background: rgba(250,246,237,0.52); border: 1px solid var(--glass-border); }
.admin-policy-simulation.is-allowed { border-color: rgba(80,200,120,0.30); }
.admin-policy-simulation.is-blocked { border-color: rgba(255,111,145,0.34); }
.admin-policy-simulation strong { font-family: "Manrope", system-ui, sans-serif; }
.admin-policy-simulation ul { display: grid; gap: 4px; margin: 0; padding-left: 18px; color: var(--muted); }
.admin-policy-simulation small { color: var(--muted); }
.admin-policy-diagnostic-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 0; }
.admin-policy-diagnostic-grid > div { min-width: 0; padding: 9px; border-radius: 8px; background: rgba(255,255,255,0.28); border: 1px solid rgba(255,255,255,0.24); }
.admin-policy-diagnostic-grid > div[data-state="ok"] { border-color: rgba(80,200,120,0.28); }
.admin-policy-diagnostic-grid > div[data-state="blocked"] { border-color: rgba(255,111,145,0.32); }
.admin-policy-diagnostic-grid dt { color: var(--muted); font-size: 0.72rem; font-weight: 850; }
.admin-policy-diagnostic-grid dd { margin: 2px 0 0; color: var(--ink); font-size: 0.84rem; font-weight: 780; word-break: break-word; }
.admin-policy-diagnostic-block, .admin-policy-diagnostic-list { display: grid; gap: 8px; padding-top: 4px; }
.admin-policy-diagnostic-card { display: grid; gap: 7px; padding: 10px; border-radius: 8px; background: rgba(250,246,237,0.48); border: 1px solid var(--glass-border); }
.admin-policy-diagnostic-card.is-allowed { border-color: rgba(80,200,120,0.28); }
.admin-policy-diagnostic-card.is-blocked { border-color: rgba(255,111,145,0.32); }
.admin-policy-match-list { display: grid; gap: 7px; }
.admin-policy-match-list button { display: grid; gap: 2px; width: 100%; min-height: 48px; padding: 9px 10px; border: 1px solid var(--glass-border); border-radius: 8px; background: rgba(255,255,255,0.28); color: var(--ink); text-align: left; cursor: pointer; }
.admin-policy-match-list button:hover { border-color: rgba(72,139,211,0.42); background: rgba(72,139,211,0.10); }
.admin-policy-match-list small { color: var(--muted); }
.admin-policy-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-top: 14px; }
.admin-policy-card { display: grid; gap: 10px; min-width: 0; padding: 14px; border-radius: 8px; background: var(--glass-child); border: 1px solid var(--glass-border); box-shadow: var(--child-shadow); }
.admin-policy-card-head { display: flex; align-items: start; justify-content: space-between; gap: 12px; }
.admin-policy-card-head h3 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: 1rem; line-height: 1.2; }
.admin-policy-card-head code { display: inline-block; margin-top: 3px; color: var(--muted); font-size: 0.78rem; word-break: break-word; }
.admin-policy-card-head span { flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 26px; padding: 0 9px; border-radius: 999px; background: rgba(80,200,120,0.14); color: #2f7d48; font-size: 0.74rem; font-weight: 860; }
.admin-policy-card-head span.is-needs_review, .admin-policy-card-head span.is-unknown { background: rgba(255,217,106,0.20); color: #8f6d15; }
.admin-policy-card-head span.is-not_allowed, .admin-policy-card-head span.is-expired { background: rgba(255,111,145,0.14); color: #9f4560; }
.admin-policy-card label { display: grid; gap: 5px; min-width: 0; color: var(--muted); font-size: 0.78rem; font-weight: 780; }
.admin-policy-card input, .admin-policy-card select { min-height: 38px; }
.admin-policy-card textarea { min-height: 62px; resize: vertical; }
.admin-policy-toggle-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 6px; }
.admin-policy-toggle-grid label { display: flex; align-items: center; gap: 7px; min-height: 30px; padding: 5px 8px; border-radius: 8px; background: rgba(255,255,255,0.24); }
.admin-policy-toggle-grid input { width: auto; min-height: 0; }
.admin-policy-card > button { justify-self: start; }
.admin-products-page { display: grid; gap: 18px; }
.admin-products-actions { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.admin-products-stat-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; margin-top: 18px; }
.admin-products-stat-grid > div { min-width: 0; padding: 14px; border-radius: 8px; background: var(--glass-child); border: 1px solid var(--glass-border); box-shadow: var(--child-shadow); }
.admin-products-stat-grid span { display: block; color: var(--muted); font-size: 0.78rem; font-weight: 820; }
.admin-products-stat-grid strong { display: block; margin-top: 4px; font-family: "Manrope", system-ui, sans-serif; font-size: 1.35rem; line-height: 1; }
.admin-products-table-wrap { margin-top: 14px; overflow-x: auto; }
.admin-products-table { width: 100%; min-width: 780px; border-collapse: separate; border-spacing: 0 7px; }
.admin-products-table th { padding: 0 12px 4px; color: var(--muted); font-size: 0.74rem; font-weight: 860; text-align: left; white-space: nowrap; }
.admin-products-table td { min-height: 42px; padding: 10px 12px; background: rgba(255,255,255,0.24); border-top: 1px solid rgba(255,255,255,0.24); border-bottom: 1px solid rgba(255,255,255,0.24); color: var(--ink); font-size: 0.86rem; vertical-align: middle; white-space: nowrap; }
.admin-products-table td:first-child { border-left: 1px solid rgba(255,255,255,0.24); border-radius: 8px 0 0 8px; }
.admin-products-table td:last-child { border-right: 1px solid rgba(255,255,255,0.24); border-radius: 0 8px 8px 0; }
.admin-products-table strong { display: block; max-width: 360px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-family: "Manrope", system-ui, sans-serif; line-height: 1.2; }
.admin-products-table small { display: block; max-width: 360px; margin-top: 2px; color: var(--muted); font: 0.72rem/1.2 "Inter", system-ui, sans-serif; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-products-table select { width: 100%; min-width: 128px; min-height: 34px; padding: 0 10px; font-size: 0.82rem; }
.admin-products-table tr.is-saving td { opacity: 0.72; }
.admin-products-table tr.is-saved td { border-color: rgba(80,200,120,0.36); }
.admin-products-table tr.is-error td { border-color: rgba(255,111,145,0.42); }
.admin-products-switch { width: 42px; height: 24px; display: inline-flex; align-items: center; cursor: pointer; }
.admin-products-switch input { position: absolute; width: 1px !important; height: 1px !important; min-height: 0 !important; margin: 0; opacity: 0; pointer-events: none; }
.admin-products-switch span { width: 42px; height: 24px; position: relative; display: block; border-radius: 999px; background: rgba(150,150,150,0.24); box-shadow: inset 0 0 0 1px rgba(90,90,90,0.18); transition: background 0.16s ease, box-shadow 0.16s ease; }
.admin-products-switch span::after { content: ""; position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; box-shadow: 0 2px 6px rgba(0,0,0,0.16); transition: transform 0.16s ease; }
.admin-products-switch input:checked + span { background: var(--action); box-shadow: inset 0 0 0 1px rgba(var(--action-rgb),0.28); }
.admin-products-switch input:checked + span::after { transform: translateX(18px); }
.admin-products-status { min-height: 22px; color: var(--muted); font-size: 0.85rem; font-weight: 780; }
.admin-products-empty { margin-top: 10px; padding: 12px; border-radius: 8px; background: rgba(255,255,255,0.24); }
.button-row { display: flex; align-items: center; justify-content: flex-end; gap: 8px; flex-wrap: wrap; }
.danger-button { background: rgba(150,70,70,0.16); color: #8a3d3d; }
.admin-awin-filter { display: grid; grid-template-columns: minmax(130px, 0.7fr) minmax(220px, 1.2fr) minmax(180px, 1fr) minmax(82px, 0.35fr) auto; gap: 10px; align-items: end; margin-top: 16px; }
.admin-awin-filter label { display: grid; gap: 6px; min-width: 0; color: var(--muted); font-size: 0.82rem; font-weight: 800; }
.admin-awin-job { display: grid; grid-template-columns: minmax(120px, 0.5fr) minmax(150px, 0.6fr) auto auto; gap: 10px; align-items: end; margin-top: 16px; padding-top: 14px; border-top: 1px solid var(--glass-line); }
.admin-awin-job label { display: grid; gap: 6px; min-width: 0; color: var(--muted); font-size: 0.82rem; font-weight: 800; }
.admin-awin-checkbox { display: flex !important; align-items: center; gap: 8px; min-height: 38px; padding: 0 10px; border-radius: 8px; background: rgba(255,255,255,0.24); color: var(--ink) !important; }
.admin-awin-checkbox input { width: auto; min-height: 0; }
.admin-awin-list { display: grid; gap: 12px; }
.admin-awin-card.is-blocked { border-color: rgba(255,217,106,0.24); }
.admin-awin-linked { margin: 0; padding: 9px 10px; border-radius: 8px; background: rgba(72,139,211,0.10); color: var(--muted); font-weight: 760; }
.admin-awin-linked a { color: var(--link); font-weight: 850; }
.admin-awin-linked span { margin-left: 8px; font-size: 0.82rem; }
.admin-awin-icecat { display: grid; gap: 4px; padding: 10px; border-radius: 8px; background: rgba(72,139,211,0.10); border: 1px solid rgba(72,139,211,0.20); color: var(--muted); }
.admin-awin-icecat strong { color: var(--ink); font-family: "Manrope", system-ui, sans-serif; }
.admin-awin-icecat small { color: var(--muted); }
.admin-awin-links { display: flex; gap: 10px; flex-wrap: wrap; }
.admin-awin-links a { color: var(--link); font-weight: 800; text-decoration: none; }
.admin-awin-actions { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.admin-awin-actions .ghost-button { min-height: 34px; }
.admin-catalog-review-filter { display: grid; grid-template-columns: minmax(160px, 0.8fr) minmax(180px, 0.9fr) minmax(220px, 1fr) minmax(82px, 0.35fr) auto; gap: 10px; align-items: end; margin-top: 16px; }
.admin-catalog-review-filter label, .admin-catalog-review-spec-form label, .admin-catalog-review-note-form label { display: grid; gap: 6px; min-width: 0; color: var(--muted); font-size: 0.82rem; font-weight: 800; }
.admin-catalog-review-message { min-height: 24px; color: #2f7d48; font-size: 0.86rem; font-weight: 800; }
.admin-catalog-review-message.error { color: #9f4560; }
.admin-catalog-review-list { display: grid; gap: 12px; }
.admin-catalog-review-card { gap: 12px; }
.admin-catalog-review-text { padding: 10px; border-radius: 8px; background: rgba(255,255,255,0.24); color: var(--muted); }
.admin-catalog-review-workflow { display: grid; gap: 10px; padding-top: 10px; border-top: 1px solid var(--glass-line); }
.admin-catalog-review-step { display: grid; gap: 10px; min-width: 0; padding: 12px; border-radius: 8px; background: rgba(250,246,237,0.46); border: 1px solid var(--glass-border); }
.admin-catalog-review-step.is-primary { border-color: rgba(72,139,211,0.24); background: rgba(72,139,211,0.08); }
.admin-catalog-review-step-head { display: flex; align-items: start; gap: 10px; }
.admin-catalog-review-step-head > span, .admin-catalog-review-step summary > span { flex: 0 0 auto; display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 30px; border-radius: 999px; background: var(--action); color: #fff; font-weight: 880; }
.admin-catalog-review-step h4 { margin: 0; color: var(--ink); font-family: "Manrope", system-ui, sans-serif; font-size: 0.98rem; }
.admin-catalog-review-step p { margin: 2px 0 0; color: var(--muted); font-size: 0.86rem; }
.admin-catalog-review-step summary { display: flex; align-items: center; gap: 10px; cursor: pointer; color: var(--ink); font-family: "Manrope", system-ui, sans-serif; font-weight: 850; }
.admin-catalog-review-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.admin-catalog-review-columns section { display: grid; gap: 8px; min-width: 0; padding: 10px; border-radius: 8px; background: rgba(250,246,237,0.45); border: 1px solid var(--glass-border); }
.admin-catalog-review-columns h4 { margin: 0; color: var(--ink); font-family: "Manrope", system-ui, sans-serif; font-size: 0.92rem; }
.admin-catalog-review-chip-list { display: flex; gap: 7px; flex-wrap: wrap; min-width: 0; }
.admin-catalog-review-chip-list span, .admin-catalog-review-chip-list a, .admin-catalog-review-chip-list small { display: inline-flex; align-items: center; min-height: 28px; max-width: 100%; padding: 0 9px; border-radius: 999px; background: rgba(255,255,255,0.34); color: var(--muted); font-size: 0.75rem; font-weight: 780; text-decoration: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.admin-catalog-review-chip-list a { color: var(--link); }
.admin-catalog-review-spec-form { display: grid; grid-template-columns: minmax(170px, 1fr) minmax(160px, 0.8fr) minmax(150px, 0.8fr) minmax(90px, 0.45fr) minmax(80px, 0.38fr) auto; gap: 8px; align-items: end; }
.admin-catalog-review-note-form { display: grid; grid-template-columns: minmax(150px, 0.7fr) minmax(150px, 0.7fr) minmax(240px, 1fr) auto; gap: 8px; align-items: end; }
.admin-catalog-review-actions { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.admin-catalog-review-actions input { max-width: 300px; }
.admin-catalog-review-actions .ghost-button, .admin-catalog-review-spec-form .ghost-button, .admin-catalog-review-note-form .ghost-button { min-height: 34px; }
.admin-catalog-review-spec-form.is-saving, .admin-catalog-review-note-form.is-saving, .admin-catalog-review-actions.is-saving { opacity: 0.72; }
.pricing-section { display: grid; gap: 18px; }
.pricing-section .section-head p { margin: 8px 0 0; color: var(--muted); }
.page-main:has(> .page-block > .pricing-page-header) { gap: 18px 14px; }
.page-block:has(> .pricing-offer-card) { align-self: stretch; }
.pricing-storage-card button:disabled { cursor: not-allowed; opacity: 0.58; filter: saturate(0.35); box-shadow: none; }
.pricing-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.pricing-card:not(.pricing-offer-card) { display: grid; grid-template-rows: minmax(128px, auto) auto 1fr auto auto auto; align-content: stretch; gap: 16px; min-width: 0; padding: 22px 22px 0; border-radius: 8px; overflow: hidden; }
.pricing-card:not(.pricing-offer-card) h2 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: 1.2rem; }
.pricing-plan-title { display: flex; align-items: flex-start; gap: 6px; line-height: 1.05; }
.pricing-plan-brand { color: var(--ink); }
.pricing-plan-model { position: relative; top: -0.18em; color: #8aaeb2; font-size: 0.72em; font-weight: 800; letter-spacing: 0; text-transform: uppercase; }
.pricing-card-free .pricing-plan-model { color: #35b9d0; }
.pricing-card-maker-pass .pricing-plan-model { color: #ff6f91; }
.pricing-card-plus .pricing-plan-model { color: #a56bff; }
.pricing-card-pro .pricing-plan-model { color: #ff6f91; }
.pricing-card-byok .pricing-plan-model { color: #50c878; }
.active-plan-badge { position: absolute; top: 0; left: 50%; z-index: 1; display: inline-flex; width: max-content; max-width: calc(100% - 28px); min-height: 28px; align-items: center; justify-content: center; margin: 0; padding: 0 12px; border: 1px solid rgba(255,255,255,0.54); border-radius: 999px; color: #20201d; font-size: 0.72rem; font-weight: 850; letter-spacing: 0.06em; line-height: 1; text-transform: uppercase; transform: translate(-50%, -50%); box-shadow: var(--glass-shadow), 0 0 26px rgba(75,70,58,0.16); backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.pricing-card.is-active-plan { position: relative; padding-top: 28px; overflow: visible; }
.pricing-card-free .active-plan-badge { background: #35b9d0; box-shadow: var(--glass-shadow), 0 0 26px rgba(53,185,208,0.28); }
.pricing-card-maker-pass .active-plan-badge { background: #ff6f91; color: #fff; box-shadow: var(--glass-shadow), 0 0 26px rgba(255,111,145,0.30); }
.pricing-card-plus .active-plan-badge { background: #a56bff; color: #fff; box-shadow: var(--glass-shadow), 0 0 26px rgba(165,107,255,0.30); }
.pricing-card-pro .active-plan-badge { background: #ff6f91; color: #fff; box-shadow: var(--glass-shadow), 0 0 26px rgba(255,111,145,0.30); }
.pricing-card-byok .active-plan-badge { background: #50c878; box-shadow: var(--glass-shadow), 0 0 26px rgba(80,200,120,0.28); }
.pricing-card-free.is-active-plan { border-color: rgba(53,185,208,0.62); box-shadow: var(--glass-shadow), 0 0 34px rgba(53,185,208,0.20); }
.pricing-card-maker-pass.is-active-plan { border-color: rgba(255,111,145,0.62); box-shadow: var(--glass-shadow), 0 0 34px rgba(255,111,145,0.20); }
.pricing-card-plus.is-active-plan { border-color: rgba(165,107,255,0.62); box-shadow: var(--glass-shadow), 0 0 34px rgba(165,107,255,0.20); }
.pricing-card-pro.is-active-plan { border-color: rgba(255,111,145,0.62); box-shadow: var(--glass-shadow), 0 0 34px rgba(255,111,145,0.20); }
.pricing-card-byok.is-active-plan { border-color: rgba(80,200,120,0.62); box-shadow: var(--glass-shadow), 0 0 34px rgba(80,200,120,0.20); }
.pricing-card:not(.pricing-offer-card) p, .pricing-card:not(.pricing-offer-card) li, .pricing-note { color: var(--muted); line-height: 1.45; }
.pricing-card:not(.pricing-offer-card) p { margin: 8px 0 0; }
.pricing-price { position: relative; align-self: end; margin: 0 -22px; padding: 20px 22px 22px; border-radius: 0 0 8px 8px; color: #fff; background: linear-gradient(135deg, #1f6f82 0%, #2d9db3 100%); box-shadow: inset 0 1px 0 rgba(255,255,255,0.22), inset 0 -1px 0 rgba(0,0,0,0.16), 0 -14px 34px rgba(75,70,58,0.11); overflow: hidden; }
.pricing-price::after { content: ""; position: absolute; inset: 0; background: linear-gradient(115deg, rgba(255,255,255,0.18), transparent 34%, rgba(0,0,0,0.12)); pointer-events: none; }
.pricing-card-free .pricing-price { background: linear-gradient(135deg, #1d7285 0%, #35b9d0 100%); }
.pricing-card-maker-pass .pricing-price { background: linear-gradient(135deg, #a3375f 0%, #df5f82 100%); }
.pricing-card-plus .pricing-price { background: linear-gradient(135deg, #5f3db0 0%, #9b68e8 100%); }
.pricing-card-pro .pricing-price { background: linear-gradient(135deg, #a3375f 0%, #df5f82 100%); }
.pricing-card-byok .pricing-price { background: linear-gradient(135deg, #2f774d 0%, #4dc477 100%); }
.pricing-price-kicker { position: relative; z-index: 1; display: inline-flex; margin: 0 0 5px; padding: 3px 8px; border: 1px solid rgba(255,255,255,0.38); border-radius: 999px; color: rgba(255,255,255,0.92); font-size: 0.72rem; font-weight: 900; line-height: 1; letter-spacing: 0.08em; text-transform: uppercase; }
.pricing-price strong { position: relative; z-index: 1; display: flex; align-items: flex-end; gap: 9px; font-family: "Manrope", system-ui, sans-serif; color: #fff; line-height: 0.9; letter-spacing: 0; text-shadow: 0 3px 22px rgba(0,0,0,0.20); }
.pricing-price strong.pricing-price-value { font-size: clamp(1.7rem, 3vw, 2.7rem); font-weight: 900; line-height: 1; }
.pricing-price-amount { display: block; margin: 0; color: inherit; font-size: 3.7rem; font-weight: 900; line-height: 0.88; }
.pricing-price-currency { display: block; margin: 0 0 0.18em; color: rgba(255,255,255,0.94); font-size: 1.25rem; font-weight: 900; line-height: 1; letter-spacing: 0.03em; }
.pricing-price-cadence { position: relative; z-index: 1; display: block; margin-top: 10px; color: rgba(255,255,255,0.90); font-size: 0.82rem; font-weight: 850; letter-spacing: 0.04em; text-transform: uppercase; }
.pricing-metric strong { display: block; font-family: "Manrope", system-ui, sans-serif; font-size: 2.4rem; line-height: 1; }
.pricing-metric span { display: block; margin-top: 4px; color: var(--muted); font-size: 0.88rem; }
.pricing-card:not(.pricing-offer-card) ul { display: grid; align-content: start; gap: 8px; margin: 0; padding-left: 18px; }
.pricing-note { align-self: end; font-size: 0.84rem; }
.pricing-plan-change { align-self: end; }
.pricing-plan-change .ghost-button { width: 100%; }
.pricing-checkout-message {
  margin: 0;
  padding: 14px 16px;
  border: 1px solid rgba(78, 143, 205, 0.28);
  border-radius: 8px;
  background: rgba(78, 143, 205, 0.08);
  color: var(--ink);
  font-weight: 750;
}
.pricing-offer-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  align-items: stretch;
}
.pricing-page-disclaimer { width: 100%; margin: 0; }
.pricing-benefit-list,
.pricing-reach ul {
  margin: 0;
}
.pricing-reach {
  display: grid;
  align-content: start;
  gap: 8px;
}
.pricing-reach > strong {
  color: var(--ink);
  font-size: 0.82rem;
}
.pricing-reach ul {
  display: grid;
  gap: 6px;
  padding-left: 18px;
}
.pricing-reach li {
  font-size: 0.88rem;
}
.pricing-package-activation-note {
  align-self: start;
  margin: 0 !important;
  font-size: 0.8rem;
}
.pricing-reach-note {
  max-width: 1120px;
  margin: -2px auto 0;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.45;
  text-align: center;
}
.pricing-catalog-note {
  display: flex;
  align-items: baseline;
  gap: 10px;
  padding: 16px 18px;
  border: 1px solid var(--glass-border);
  border-radius: 8px;
  background: var(--glass);
  box-shadow: var(--glass-shadow);
}
.pricing-catalog-note span {
  color: var(--muted);
}

@media (max-width: 760px) {
  .pricing-offer-grid {
    grid-template-columns: 1fr;
  }
  .pricing-catalog-note {
    align-items: flex-start;
    flex-direction: column;
  }
}
.account-plan-activity { display: grid; gap: 8px; margin-top: 16px; }
.account-plan-activity h2 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: 1rem; }
.payment-methods { display: grid; gap: 16px; }
.payment-method-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.payment-method { display: grid; align-content: start; gap: 12px; min-width: 0; padding: 22px; border-radius: 8px; }
.payment-method p { margin: 0; color: var(--muted); line-height: 1.5; }
.payment-chip { width: max-content; min-width: 112px; min-height: 42px; display: inline-flex; align-items: center; justify-content: center; padding: 0 16px; border-radius: 8px; background: rgba(255,255,255,0.72); color: var(--action); font-family: "Manrope", system-ui, sans-serif; font-size: 1.02rem; font-weight: 860; letter-spacing: 0; box-shadow: inset 0 1px 0 rgba(255,255,255,0.66); }
.sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
.seo-content, .faq-list { display: grid; gap: 18px; }
.seo-section p, .seo-section li, .faq-list .section-head p, .faq-item p { color: var(--muted); line-height: 1.58; }
.seo-eyebrow { color: #a0184c; font-size: 0.82rem; font-weight: 820; letter-spacing: 0; text-transform: uppercase; }
.seo-section-grid, .faq-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.seo-section, .faq-item { min-width: 0; padding: 22px; border-radius: 8px; }
.seo-section h2, .faq-item h2 { margin: 0 0 10px; font-family: "Manrope", system-ui, sans-serif; font-size: 1.08rem; line-height: 1.22; font-weight: 820; }
.seo-section p, .faq-item p { margin: 0; }
.seo-section p { white-space: pre-line; }
.seo-section ul { display: grid; gap: 7px; margin: 14px 0 0; padding-left: 18px; }
.faq-list { padding: 24px; border: 1px solid var(--glass-border); border-radius: 8px; background: var(--glass); box-shadow: var(--glass-shadow); }
.faq-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(260px, 0.55fr); gap: 24px; align-items: end; }
.faq-head h1, .faq-head h2 { margin: 0; font-family: "Manrope", system-ui, sans-serif; font-size: clamp(0.875rem, 2vw, 1.5rem); line-height: 1.04; }
.faq-head > div > p:last-child { max-width: 760px; margin: 10px 0 0; color: var(--muted); line-height: 1.5; }
.faq-eyebrow { margin: 0 0 7px; color: var(--brand-magenta); font-size: 0.78rem; font-weight: 860; letter-spacing: 0.08em; text-transform: uppercase; }
.faq-search { display: grid; gap: 7px; color: var(--ink); font-size: 0.8rem; font-weight: 840; }
.faq-search-control { min-height: 48px; display: grid; grid-template-columns: 20px minmax(0, 1fr); gap: 10px; align-items: center; padding: 0 14px; border: 1px solid var(--glass-border); border-radius: 999px; background: var(--glass-child); box-shadow: var(--child-shadow); }
.faq-search-control:focus-within { border-color: rgba(var(--action-rgb),0.5); box-shadow: 0 0 0 3px rgba(var(--action-rgb),0.1), var(--child-shadow); }
.faq-search-control svg { width: 20px; height: 20px; fill: none; stroke: var(--action); stroke-width: 1.9; stroke-linecap: round; }
.faq-search-control input[type="search"] { width: 100%; min-height: 44px; padding: 0; border: 0; outline: 0; background: transparent; color: var(--ink); font: inherit; }
.faq-result-line { color: var(--muted); font-size: 0.82rem; font-weight: 780; }
.faq-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.faq-item { padding: 0; overflow: hidden; background: var(--glass-child); box-shadow: var(--child-shadow); }
.faq-item[hidden] { display: none; }
.faq-item details { height: 100%; }
.faq-item summary { min-height: 82px; display: grid; grid-template-columns: minmax(0, 1fr) 22px; gap: 14px; align-items: center; padding: 15px 17px; cursor: pointer; list-style: none; }
.faq-item summary::-webkit-details-marker { display: none; }
.faq-item summary:hover, .faq-item summary:focus-visible { background: rgba(var(--action-rgb),0.07); outline: 0; }
.faq-item summary > span { display: grid; gap: 5px; }
.faq-item summary small { color: var(--brand-magenta); font-size: 0.69rem; font-weight: 860; letter-spacing: 0.07em; text-transform: uppercase; }
.faq-item summary h3 { margin: 0; color: var(--ink); font-family: inherit; font-size: 0.98rem; line-height: 1.3; }
.faq-item summary > svg { width: 20px; height: 20px; fill: none; stroke: var(--action); stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; transition: transform 160ms ease; }
.faq-item details[open] summary { border-bottom: 1px solid var(--glass-line); background: rgba(var(--action-rgb),0.06); }
.faq-item details[open] summary > svg { transform: rotate(180deg); }
.faq-answer { display: grid; gap: 13px; padding: 16px 17px 18px; }
.faq-answer p { color: var(--muted); line-height: 1.55; }
.faq-answer ul { display: grid; gap: 7px; margin: 0; padding-left: 18px; color: var(--muted); }
.faq-visual { display: flex; align-items: stretch; gap: 8px; flex-wrap: wrap; margin: 0; padding: 11px; border-radius: 8px; background: rgba(var(--action-rgb),0.07); }
.faq-visual-item { flex: 1 1 130px; min-width: 0; display: grid; grid-template-columns: 34px minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 9px; align-items: center; padding: 8px; border-radius: 8px; background: var(--glass-child); }
.faq-visual-icon { grid-row: 1 / span 2; width: 34px; height: 34px; display: inline-grid; place-items: center; border-radius: 999px; background: rgba(var(--action-rgb),0.12); color: var(--action); }
.faq-visual-icon svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.faq-visual-item strong { min-width: 0; color: var(--ink); font-size: 0.78rem; line-height: 1.2; }
.faq-visual-item small { min-width: 0; color: var(--muted); font-size: 0.69rem; line-height: 1.2; }
.faq-answer-link { justify-self: start; color: var(--action); font-weight: 840; text-decoration: none; }
.faq-answer-link:hover, .faq-answer-link:focus-visible { text-decoration: underline; }
.faq-empty { padding: 26px; border-radius: 8px; background: var(--glass-child); text-align: center; }
.faq-empty p { margin: 7px 0 0; color: var(--muted); }
.grid-span-1 { grid-column: span 1; }
.grid-span-2 { grid-column: span 2; }
.grid-span-3 { grid-column: span 3; }
.grid-span-4 { grid-column: 1 / -1; }
.grid-start-1 { grid-column-start: 1; }
.grid-start-2 { grid-column-start: 2; }
.grid-start-3 { grid-column-start: 3; }
.grid-start-4 { grid-column-start: 4; }
.page-main:has(> [class*="grid-start-"]) { grid-auto-flow: row; }

@media (max-width: 980px) {
    .page-main:has(> [class*="grid-span-tablet-"]) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .page-main > .grid-span-tablet-1 { grid-column: span 1; }
    .page-main > .grid-span-tablet-2 { grid-column: span 2; }
    .page-main > .grid-span-tablet-3 { grid-column: span 3; }
    .page-main > .grid-span-tablet-4 { grid-column: 1 / -1; }
    .page-main > [class*="grid-start-"]:not([class*="grid-start-tablet-"]) { grid-column-start: auto; }
    .page-main > .grid-start-tablet-1 { grid-column-start: 1; }
    .page-main > .grid-start-tablet-2 { grid-column-start: 2; }
    .page-main > .grid-start-tablet-3 { grid-column-start: 3; }
    .page-main > .grid-start-tablet-4 { grid-column-start: 4; }
}

@media (max-width: 760px) {
    .editor-workspace { grid-template-columns: 1fr; }
    .editor-view-index { position: static; max-height: 340px; }
    .editor-selected-page { align-items: stretch; flex-direction: column; }
    .editor-selected-page .ghost-button { align-self: flex-start; }
    .editor-meta-section > summary { align-items: flex-start; flex-direction: column; }
    .editor-meta-section > summary small { margin-left: 0; }
    .editor-block-head { align-items: stretch; }
    .editor-block-head > .editor-block-actions { padding-left: 0; }
    .page-main:has(> [class*="grid-span-mobile-"]) { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .page-main > .grid-span-mobile-1 { grid-column: span 1; }
    .page-main > .grid-span-mobile-2 { grid-column: span 2; }
    .page-main > .grid-span-mobile-3 { grid-column: span 3; }
    .page-main > .grid-span-mobile-4 { grid-column: 1 / -1; }
    .page-main > [class*="grid-start-"]:not([class*="grid-start-mobile-"]) { grid-column-start: auto; }
    .page-main > .grid-start-mobile-1 { grid-column-start: 1; }
    .page-main > .grid-start-mobile-2 { grid-column-start: 2; }
    .page-main > .grid-start-mobile-3 { grid-column-start: 3; }
    .page-main > .grid-start-mobile-4 { grid-column-start: 4; }
}
@container editor-page (max-width: 900px) {
    .editor-selected-page { align-items: flex-start; }
    .editor-selected-page-actions { flex-direction: column; align-items: stretch; }
    .editor-canvas-toolbar { grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "intro devices" "actions actions"; }
    .editor-add-blocks { justify-self: end; padding-top: 9px; border-top: 1px solid var(--glass-line); }
    .editor-rich-toolbar-head { grid-template-columns: minmax(160px, 1fr) auto; }
    .editor-rich-save-action { grid-template-columns: auto; gap: 2px; }
    .editor-rich-save-action > small { min-height: 0.9rem; }
}
@container editor-page (max-width: 620px) {
    .editor-selected-page { flex-direction: column; }
    .editor-selected-page-actions { width: 100%; flex-direction: row; }
    .editor-canvas-toolbar { grid-template-columns: 1fr; grid-template-areas: "intro" "devices" "actions"; }
    .editor-device-switch { justify-self: stretch; }
    .editor-device-switch button { flex: 1; justify-content: center; }
    .editor-add-blocks { justify-self: stretch; }
    .editor-add-blocks > button { flex: 1 1 150px; }
    .editor-rich-toolbar-head { grid-template-columns: 1fr; }
    .editor-rich-save-group { justify-content: space-between; }
}
.page-main > .page-block {
    grid-column: var(--page-grid-start, auto) / span var(--page-grid-span, 4);
    grid-row-start: var(--page-grid-row, auto);
}
@media (max-width: 980px) {
    .page-main > .page-block {
        grid-column: var(--page-grid-start-tablet, auto) / span var(--page-grid-span-tablet, 4);
        grid-row-start: var(--page-grid-row-tablet, auto);
    }
}
@media (max-width: 760px) {
    .page-main > .page-block {
        grid-column: var(--page-grid-start-mobile, auto) / span var(--page-grid-span-mobile, 4);
        grid-row-start: var(--page-grid-row-mobile, auto);
    }
}
@media (max-width: 1100px) {
    .editor-canvas-toolbar { position: static; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "intro devices" "actions actions"; }
    .editor-rich-toolbar { position: static; }
    .editor-add-blocks { grid-column: auto; justify-self: end; padding-top: 9px; border-top: 1px solid var(--glass-line); }
    .editor-component-central-fields { grid-template-columns: minmax(150px, 0.4fr) minmax(240px, 1fr); }
    .editor-component-central-fields > button { grid-column: 2; justify-self: end; }
}
@media (max-width: 760px) {
    .editor-canvas-toolbar { grid-template-columns: 1fr; grid-template-areas: "intro" "devices" "actions"; }
    .editor-add-blocks { grid-column: auto; width: 100%; justify-self: stretch; }
    .editor-add-blocks > button { flex: 1 1 160px; }
    .editor-device-switch { justify-self: stretch; }
    .editor-device-switch button { flex: 1; justify-content: center; }
    .editor-device-switch button span { display: none; }
    .editor-rich-toolbar-head { grid-template-columns: 1fr; align-items: stretch; }
    .editor-rich-save-group { justify-content: space-between; flex-wrap: wrap; }
    .editor-rich-save-action { flex: 1 1 190px; grid-template-columns: minmax(0, 1fr) auto; }
    .editor-rich-save-action > small { text-align: left; }
    .editor-rich-control-row { align-items: end; }
    .editor-component-central-fields { grid-template-columns: 1fr; }
    .editor-component-central-fields > button { grid-column: auto; justify-self: start; }
    .editor-canvas-viewport { padding: 12px; }
    .editor-canvas { gap: 13px 8px; min-height: 420px; }
    .editor-element-toolbar { flex-wrap: wrap; }
    .editor-element-toolbar > strong { flex: 1 1 auto; }
    .editor-content-preview, .editor-rich-content { min-height: 66px; padding: 14px 13px; }
    .editor-content-node-toolbar, .editor-content-link-settings, .editor-component-field-picker { grid-template-columns: 1fr; }
    .editor-content-node-actions { justify-self: start; }
    .editor-component-copy-actions { align-items: stretch; flex-direction: column; }
    .editor-component-copy-actions > small { margin-right: 0; }
}
.card, .form-card, .simple-panel, .pricing-card:not(.pricing-offer-card), .payment-method, .seo-section, .faq-item, .project-card, .product-card-box { background: var(--glass); border: 1px solid var(--glass-border); box-shadow: var(--glass-shadow); backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.product-card { --glass-blur: 2px; background: transparent; border: 0; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; }
.product-card-box { background: rgba(255,255,255,0.20); transition: background 120ms ease, border-color 120ms ease; }
.product-card.is-project-missing .product-card-box { background: linear-gradient(rgba(255,210,90,0.25), rgba(255,210,90,0.25)), rgba(255,255,255,0.20); border-color: rgba(255,210,90,0.48); }
.product-card.is-project-missing:hover .product-card-box { background: linear-gradient(rgba(255,210,90,0.25), rgba(255,210,90,0.25)), rgba(255,255,255,0.36); border-color: rgba(255,210,90,0.62); }
.product-card:hover .product-card-box { background: rgba(255,255,255,0.40); border-color: rgba(255,255,255,0.42); }
.empty-state, .component-error, .plan-status-grid > div, .ai-provider-card, .ai-usage-row { background: var(--glass-child); border: 1px solid var(--glass-border); box-shadow: var(--child-shadow); backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.ai-provider-card { position: relative; overflow: visible; }
.wave-mode-toggle, .suggestion, .ai-provider-card-head span, .ai-provider-meta span, .payment-chip { background: var(--glass-strong); border: 1px solid var(--glass-border); box-shadow: inset 0 1px 0 rgba(255,255,255,0.52), 0 8px 28px rgba(75,70,58,0.08); backdrop-filter: blur(var(--glass-blur)); -webkit-backdrop-filter: blur(var(--glass-blur)); }
.ai-key-form, .pricing-note, .pricing-price { border-top-color: var(--glass-line); }
html[data-design="blue"] body { background: radial-gradient(circle at 50% -10%, rgba(56,189,248,0.18), transparent 38%), linear-gradient(180deg, #06101f 0%, #050b16 54%, #020814 100%); color: var(--ink); }
html[data-design="blue"] .brand, html[data-design="blue"] .section-head h1, html[data-design="blue"] .form-card h1, html[data-design="blue"] .simple-panel h1, html[data-design="blue"] .auth-card h1, html[data-design="blue"] .hero h1 { color: var(--ink); }
html[data-design="blue"] .nav-link { border: 0; background: transparent; color: rgba(237,247,255,0.72); box-shadow: none; }
html[data-design="blue"] .logout-button { background: rgba(255,255,255,0.07); color: rgba(237,247,255,0.78); border: 1px solid var(--glass-border); box-shadow: inset 0 1px 0 rgba(237,247,255,0.16), 0 12px 34px rgba(0,0,0,0.20); }
html[data-design="blue"] .nav-link:hover { background: transparent; color: #fff; box-shadow: none; }
html[data-design="blue"] .logout-button:hover, html[data-design="blue"] .submit-button, html[data-design="blue"] .ghost-button, html[data-design="blue"] .add-button, html[data-design="blue"] .project-link, html[data-design="blue"] .delete-button, html[data-design="blue"] .price-compare, html[data-design="blue"] .product-edit-link { background: var(--action); color: #fff; }
html[data-design="blue"] .nav-link[aria-current="page"] { border: 0; background: transparent; color: #fff; box-shadow: none; }
html[data-design="blue"] .empty-state, html[data-design="blue"] .component-error, html[data-design="blue"] .plan-status-grid > div, html[data-design="blue"] .ai-provider-card, html[data-design="blue"] .ai-usage-row { background: var(--glass-child); border-color: var(--glass-border); box-shadow: var(--child-shadow); }
html[data-design="blue"] input, html[data-design="blue"] select, html[data-design="blue"] textarea { background: rgba(255,255,255,0.055); color: var(--ink); border: 0; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; }

html[data-design="blue"] select option { background: #071726; color: #edf7ff; }

html[data-design="blue"] label, html[data-design="blue"] .hero-subline, html[data-design="blue"] .hero-tagline, html[data-design="blue"] .landing-context-text, html[data-design="blue"] .landing-context-note, html[data-design="blue"] .card p, html[data-design="blue"] .message, html[data-design="blue"] .help, html[data-design="blue"] .page-footer, html[data-design="blue"] .footer-links a { color: var(--muted); }
html[data-design="blue"] .link-button, html[data-design="blue"] .links a { color: var(--accent-secondary); }
html[data-design="blue"] .suggestion { background: rgba(56,189,248,0.12); color: var(--ink); border: 1px solid rgba(56,189,248,0.25); }
html[data-design="blue"] .delete-button { background: var(--action); color: #fff; }
html[data-design="blue"] .page-footer { border-top-color: rgba(76,161,255,0.18); }
html[data-design="blue"] .design-switch { color: var(--ink); }
html[data-design="blue"] .design-switch-track { background: var(--action-disabled); }
html[data-design="blue"] .wave-mode-toggle { background: var(--glass-strong); box-shadow: inset 0 1px 0 rgba(237,247,255,0.12), 0 10px 28px rgba(0,0,0,0.18); }
html[data-design="blue"] .wave-mode-option { color: rgba(237,247,255,0.66); }
html[data-design="blue"] .wave-mode-option.is-active { background: var(--action); color: #fff; box-shadow: 0 2px 12px rgba(0,0,0,0.22); }
html[data-design="blue"] .ai-provider-card, html[data-design="blue"] .ai-usage-row { background: var(--glass-child); border-color: var(--glass-border); }
html[data-design="blue"] .ai-provider-card-head span, html[data-design="blue"] .ai-provider-meta span { background: rgba(255,217,106,0.12); border-color: rgba(255,217,106,0.18); }
html[data-design="blue"] .ai-api-settings .plan-status-grid > div, html[data-design="blue"] .ai-api-settings .ai-usage-row { background: transparent; border-color: var(--glass-line); box-shadow: none; }
html[data-design="blue"] .ai-api-settings .ai-provider-card { background: var(--glass-child); border-color: var(--glass-border); box-shadow: var(--child-shadow); }
html[data-design="blue"] .ai-api-settings .ai-key-form { background: rgba(255,255,255,0.035); border-color: var(--glass-line); }
html[data-design="blue"] .ai-key-chip.is-connected { color: #8df0a4; }
html[data-design="blue"] .pricing-card-free .pricing-plan-model { color: #6ee7f2; }
html[data-design="blue"] .pricing-card-maker-pass .pricing-plan-model { color: #ff9ab1; }
html[data-design="blue"] .pricing-card-plus .pricing-plan-model { color: #caa7ff; }
html[data-design="blue"] .pricing-card-pro .pricing-plan-model { color: #ff9ab1; }
html[data-design="blue"] .pricing-card-byok .pricing-plan-model { color: #8df0a4; }
html[data-design="blue"] .active-plan-badge { border-color: rgba(237,247,255,0.38); color: #04111f; box-shadow: var(--glass-shadow), 0 0 30px rgba(120,202,255,0.18); }
html[data-design="blue"] .pricing-card-free .active-plan-badge { background: #6ee7f2; box-shadow: var(--glass-shadow), 0 0 30px rgba(110,231,242,0.28); }
html[data-design="blue"] .pricing-card-maker-pass .active-plan-badge { background: #ff9ab1; color: #04111f; box-shadow: var(--glass-shadow), 0 0 30px rgba(255,154,177,0.28); }
html[data-design="blue"] .pricing-card-plus .active-plan-badge { background: #caa7ff; box-shadow: var(--glass-shadow), 0 0 30px rgba(202,167,255,0.28); }
html[data-design="blue"] .pricing-card-pro .active-plan-badge { background: #ff9ab1; box-shadow: var(--glass-shadow), 0 0 30px rgba(255,154,177,0.28); }
html[data-design="blue"] .pricing-card-byok .active-plan-badge { background: #8df0a4; box-shadow: var(--glass-shadow), 0 0 30px rgba(141,240,164,0.28); }
html[data-design="blue"] .pricing-card-free.is-active-plan { border-color: rgba(110,231,242,0.56); box-shadow: var(--glass-shadow), 0 0 38px rgba(110,231,242,0.18); }
html[data-design="blue"] .pricing-card-maker-pass.is-active-plan { border-color: rgba(255,154,177,0.56); box-shadow: var(--glass-shadow), 0 0 38px rgba(255,154,177,0.18); }
html[data-design="blue"] .pricing-card-plus.is-active-plan { border-color: rgba(202,167,255,0.56); box-shadow: var(--glass-shadow), 0 0 38px rgba(202,167,255,0.18); }
html[data-design="blue"] .pricing-card-pro.is-active-plan { border-color: rgba(255,154,177,0.56); box-shadow: var(--glass-shadow), 0 0 38px rgba(255,154,177,0.18); }
html[data-design="blue"] .pricing-card-byok.is-active-plan { border-color: rgba(141,240,164,0.56); box-shadow: var(--glass-shadow), 0 0 38px rgba(141,240,164,0.18); }
html[data-design="blue"] .payment-chip { background: rgba(237,247,255,0.92); }
html[data-design="blue"] .seo-eyebrow, html[data-design="blue"] .link-button, html[data-design="blue"] .links a { color: var(--accent-secondary); }
.header-preferences { display: flex; justify-content: center; align-items: center; gap: 12px 24px; width: 100%; flex-wrap: wrap; }
.header-preference { display: inline-flex; align-items: center; gap: 8px; color: var(--muted); font-size: 0.86rem; font-weight: 760; }
.header-preference select { min-height: 34px; max-width: 190px; border: 0; border-radius: 8px; background: rgba(255,255,255,0.54); color: #20201d; font: inherit; font-size: 0.82rem; font-weight: 760; padding: 0 10px; }
html[data-design="blue"] .header-preference select { background: rgba(237,247,255,0.08); color: #edf7ff; border: 1px solid rgba(76,161,255,0.16); }
@media (max-width: 520px) {
  .header-preferences { gap: 8px 14px; }
  .header-preference { gap: 6px; font-size: 0.8rem; }
  .header-preference select { max-width: 142px; min-height: 32px; padding: 0 7px; font-size: 0.76rem; }
}
.project-alternative-modal .polygon-content { max-width: min(720px, calc(100vw - 28px)); }
.project-alternative-state { display: grid; gap: 14px; }
.project-alternative-original, .project-alternative-section { display: grid; gap: 8px; }
.project-alternative-original span, .project-alternative-section h4 { margin: 0; color: rgba(32,32,29,0.62); font-size: 0.78rem; font-weight: 860; text-transform: uppercase; }
.project-alternative-list { display: grid; gap: 8px; }
.project-alternative-option { display: grid; gap: 3px; width: 100%; min-height: 64px; padding: 10px 12px; border: 0; border-radius: 8px; background: rgba(32,32,29,0.06); color: #20201d; cursor: pointer; font: inherit; text-align: left; }
.project-alternative-option strong, .project-alternative-original strong { color: #20201d; font-size: 0.96rem; line-height: 1.28; }
.project-alternative-option span, .project-alternative-option small { color: rgba(32,32,29,0.62); font-size: 0.78rem; line-height: 1.35; }
.project-alternative-option:hover { background: rgba(var(--action-rgb),0.12); }
html[data-design="blue"] .project-alternative-original span, html[data-design="blue"] .project-alternative-section h4, html[data-design="blue"] .project-alternative-option span, html[data-design="blue"] .project-alternative-option small { color: #98b5d7; }
html[data-design="blue"] .project-alternative-option { background: rgba(237,247,255,0.08); color: #edf7ff; border: 1px solid rgba(76,161,255,0.16); }
html[data-design="blue"] .project-alternative-option strong, html[data-design="blue"] .project-alternative-original strong { color: #edf7ff; }
@media (max-width: 980px) { .page-main, .component-grid, .gallery, .pricing-grid, .seo-section-grid, .product-detail-sections, .account-profile-grid, .account-two, .account-billing-grid, .admin-policy-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .community-teaser, .community-founder-wide, .dashboard-command-head, .dashboard-command-task, .dashboard-status, .dashboard-question, .faq-head { grid-template-columns: 1fr; } .community-mini-grid, .community-step-grid, .community-action-grid, .community-fact-grid, .dashboard-command-metrics, .dashboard-metrics, .admin-policy-stat-grid, .admin-products-stat-grid, .admin-policy-diagnostic-grid, .admin-policy-cache-grid, .admin-awin-filter, .admin-awin-job, .admin-ai-provider-fields, .admin-ai-usage-summary, .admin-catalog-review-filter, .admin-catalog-review-spec-form, .admin-catalog-review-note-form { grid-template-columns: repeat(2, minmax(0, 1fr)); } .admin-products-row, .admin-products-source-row, .admin-products-manufacturer-row { grid-template-columns: minmax(180px, 1fr) repeat(2, minmax(92px, 0.5fr)); overflow-x: auto; } .admin-catalog-review-columns { grid-template-columns: 1fr; } .dashboard-question-actions { justify-content: flex-start; } .ai-api-settings .ai-provider-card, .admin-ai-provider-card { grid-template-columns: minmax(0, 1fr); } .ai-api-settings .ai-key-form { grid-template-columns: minmax(0, 1fr); } .ai-api-settings .ai-key-status { text-align: left; } .grid-span-3, .grid-span-4 { grid-column: 1 / -1; } }
@media (max-width: 980px) { .gallery-head { flex-wrap: wrap; } .gallery-search { flex-basis: calc((100% - 16px) / 2); width: calc((100% - 16px) / 2); max-width: calc((100% - 16px) / 2); } }
@media (max-width: 980px) { .gallery.product-view-grid-4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } .gallery.product-view-grid-6 { grid-template-columns: repeat(3, minmax(0, 1fr)); } .gallery.product-view-grid-8 { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 760px) { .page-header { align-items: center; flex-direction: column; gap: 12px; } .nav-menu { justify-content: center; flex-wrap: wrap; } .page-main, .component-grid, .item-list, .gallery, .ai-provider-grid, .plan-status-grid, .pricing-grid, .payment-method-grid, .seo-section-grid, .faq-grid, .editor-toolbar, .quick-import-form, .quick-import-tools, .product-detail-card, .product-detail-sections, .product-stat-grid, .account-profile-grid, .account-two, .community-mini-grid, .community-step-grid, .community-action-grid, .community-balance-grid, .community-fact-grid, .dashboard-command-metrics, .dashboard-metrics, .dashboard-action-grid, .dashboard-feed-list, .admin-policy-grid, .admin-policy-stat-grid, .admin-products-stat-grid, .admin-policy-simulator, .admin-policy-diagnostic-grid, .admin-policy-cache-grid, .admin-awin-filter, .admin-awin-job, .admin-ai-provider-fields, .admin-ai-usage-summary, .admin-ai-usage-recent-row, .admin-catalog-review-filter, .admin-catalog-review-spec-form, .admin-catalog-review-note-form { grid-template-columns: 1fr; } .admin-products-row, .admin-products-source-row, .admin-products-manufacturer-row { grid-template-columns: minmax(170px, 1fr); align-items: start; } .admin-products-head { display: none; } .community-teaser, .community-panel, .community-founder-wide, .faq-list, .dashboard-status, .dashboard-question, .dashboard-feed { padding: 18px; } .community-rules ul { grid-template-columns: 1fr; } .dashboard-command-head, .dashboard-command-task { padding: 18px; } .community-reward-row { grid-template-columns: 1fr; align-items: start; } .community-reward-head { display: none; } .user-menu-dropdown { right: 50%; transform: translate(50%, -4px); } .user-menu[open] .user-menu-dropdown, .user-menu:hover .user-menu-dropdown, .user-menu:focus-within .user-menu-dropdown { transform: translate(50%, 0); } .quick-import-actions { display: grid; grid-template-columns: 1fr; min-width: 0; } .category-chip { max-width: 150px; } .category-token { max-width: 170px; } .category-filter-label { display: none; } .gallery-head { align-items: stretch; flex-direction: column; } .gallery-search { flex-basis: auto; min-width: 0; width: 100%; max-width: 100%; } .product-view-switcher { align-self: flex-start; } .gallery.product-view-grid-4, .gallery.product-view-grid-6, .gallery.product-view-grid-8 { grid-template-columns: 1fr; } .product-view-list .product-card { grid-template-columns: minmax(0, 1fr); } .product-view-list .product-card .product-card-metrics, .product-view-list-image .product-card .product-card-metrics { display: none; } .product-view-list-image .product-card { grid-template-columns: 52px minmax(0, 1fr); } .product-view-list-image .product-image { width: 52px; height: 52px; } .product-detail-section-wide { grid-column: auto; } .product-detail-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); } .account-row { align-items: flex-start; flex-direction: column; } .account-row strong { text-align: left; } .ai-api-settings .plan-status-grid > div { border-right: 0; border-bottom: 1px solid var(--glass-line); } .ai-api-settings .plan-status-grid > div:last-child { border-bottom: 0; } .grid-span-1, .grid-span-2, .grid-span-3, .grid-span-4 { grid-column: 1 / -1; }   .settings-section-head, .ai-provider-card-head, .editor-block-head, .admin-policy-card-head, .admin-ai-provider-summary { flex-direction: column; align-items: stretch; } .admin-policy-card-head { flex-direction: column; } .admin-ai-provider-summary p { max-width: none; text-align: left; } .admin-ai-provider-actions, .admin-catalog-review-actions { justify-content: flex-start; flex-wrap: wrap; } .ai-usage-row { grid-template-columns: 1fr 1fr; } }
@media (max-width: 760px) { .merchant-suggestions { position: static; margin-top: 6px; } .quick-import-email { grid-template-columns: 1fr; } .quick-import-email-job { grid-template-columns: 1fr; align-items: stretch; } .quick-import-email-job strong, .quick-import-email-job span { white-space: normal; } .quick-import-email-job div { justify-content: stretch; } .quick-import-email-job .submit-button, .quick-import-email-job .ghost-button { flex: 1; } .quick-import-review-dialog { padding: 15px; border-radius: 12px; } .quick-import-review-head { align-items: start; flex-direction: row; } .quick-import-review-row { grid-template-columns: minmax(0, 1fr) minmax(92px, 0.46fr); } .quick-import-review-dialog.is-single-product .quick-import-review-row:not(.quick-import-review-row-head) { grid-template-columns: minmax(0, 1fr); } .quick-import-review-dialog.is-single-product .quick-import-review-row strong { grid-column: 1; } .quick-import-review-dialog.is-single-product .quick-import-review-status { grid-column: 1; grid-row: auto; justify-self: start; } .quick-import-review-dialog.is-single-product .quick-import-review-status::before { content: none; } .quick-import-review-dialog.is-single-product .quick-import-review-row span[data-label]:not(.quick-import-review-status) { grid-column: 1; } .quick-import-review-footer, .quick-import-review-source-fields { grid-template-columns: 1fr; } .quick-import-review-source label { max-width: none; } .quick-import-review-actions { justify-content: stretch !important; } .quick-import-review-actions .submit-button, .quick-import-review-actions .ghost-button { flex: 1; } .quick-import-review-row-head { display: none !important; } .quick-import-review-row span[data-label]::before { content: attr(data-label) ": "; font-weight: 820; } .quick-import-review-status { justify-self: stretch; } }
@media (max-width: 760px) { .quick-import-form { gap: 14px; } .quick-import-paste, .quick-import-drop { min-height: 136px; } .quick-import-email-job .ghost-button { justify-self: start; } }
@media (max-width: 760px) { .quick-import-mobile-help { display: block; max-width: 18rem; margin-top: 4px; color: color-mix(in srgb, var(--muted) 88%, var(--action) 12%); font-size: 0.7rem; font-weight: 620; } }
@media (max-width: 980px) { .catalog-grid, .catalog-grid-preview, .catalog-filter-panel, .catalog-detail-card { grid-template-columns: repeat(2, minmax(0, 1fr)); } .catalog-filter-panel .submit-button { grid-column: 1 / -1; } }
@media (max-width: 1120px) { .catalog-mini-card-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); } }
@media (max-width: 1100px) { .catalog-product-check-list { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 900px) { .catalog-mini-card-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
@media (max-width: 760px) { .catalog-product-check-list { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 899px) { .catalog-detail-image-button { cursor: default; } }
@media (max-width: 760px) { .catalog-grid, .catalog-grid-preview, .catalog-filter-panel, .catalog-detail-card, .catalog-facts { grid-template-columns: 1fr; } .catalog-preview .section-head { align-items: stretch; flex-direction: column; } .catalog-actions { align-items: stretch; flex-direction: column; } .product-detail-action-row { position: static; justify-self: end; order: -1; } }
@media (max-width: 760px) and (orientation: portrait) { .catalog-grid, .catalog-grid-preview { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; } }
@media (max-width: 560px) { .catalog-offers-head, .catalog-substitutes-head { flex-direction: column; } .catalog-substitute-counts { justify-content: flex-start; } .catalog-offer-item, .catalog-substitute-item { grid-template-columns: 1fr; align-items: start; } .catalog-offer-price { justify-items: start; } .catalog-offer-item em, .catalog-substitute-item em { justify-self: start; } .catalog-spec-item { flex-basis: 100%; } .catalog-mini-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .catalog-data-field-grid { grid-template-columns: 1fr; } }
@media (max-width: 560px) { .catalog-product-check-list { grid-template-columns: minmax(0, 1fr); } }
@media (max-width: 760px) { .product-view-list .product-card, .product-view-list-image .product-card { grid-template-columns: minmax(0, 1fr); align-items: start; } .product-view-list-image .product-image { grid-column: 1; grid-row: 1; } .product-view-list .product-info, .product-view-list-image .product-info { grid-column: 1; grid-row: 1; } .product-view-list-image .product-info { margin-left: 64px; } .product-view-list .product-card .product-card-metrics, .product-view-list-image .product-card .product-card-metrics { display: grid; grid-column: 1; grid-row: 2; width: 100%; justify-self: stretch; margin-top: 8px; } }
@media (max-width: 760px) { .product-filter-tools { align-self: flex-start; flex-wrap: wrap; } }
@media (max-width: 760px) { .product-view-list .product-card-box, .product-view-list-image .product-card-box { grid-template-columns: minmax(0, 1fr); align-items: start; } .product-view-list-image .product-image { grid-column: 1; grid-row: 1; } .product-view-list .product-info, .product-view-list-image .product-info { grid-column: 1; grid-row: 1; } .product-view-list-image .product-info { margin-left: 64px; } .product-view-list .product-card .product-card-metrics, .product-view-list-image .product-card .product-card-metrics { display: grid; grid-column: 1; grid-row: 2; width: 100%; justify-self: stretch; margin-top: 8px; } }
.category-filter .category-chip { max-width: none; }
.catalog-choice-box {
  display: grid;
  gap: 0.72rem;
  width: 100%;
  min-width: 0;
  max-width: none;
  margin: 0 0 1rem;
  padding: clamp(0.78rem, 1.4vw, 1rem);
  border: 1px solid color-mix(in srgb, var(--accent, #4b8ecf) 24%, transparent);
  border-radius: 0.9rem;
  background: color-mix(in srgb, var(--surface, #fff) 96%, var(--accent, #4b8ecf) 4%);
  box-shadow: 0 12px 34px rgba(31, 53, 75, 0.07);
}

.catalog-choice-copy {
  display: flex;
  align-items: baseline;
  gap: 0.45rem 0.8rem;
  flex-wrap: wrap;
}

.catalog-choice-copy > strong {
  color: var(--ink, #1e1e1c);
  font-size: 0.94rem;
  font-weight: 840;
}

.catalog-choice-box p {
  flex: 1 1 28rem;
  max-width: 54rem;
  margin: 0;
  color: var(--muted, #6d6b64);
  font-size: 0.78rem;
  line-height: 1.38;
}

.catalog-choice-box form {
  display: grid;
  gap: 0.7rem;
}

.catalog-choice-comparison {
  display: grid;
  grid-template-columns: minmax(8.75rem, 10rem) minmax(0, 1fr);
  gap: 0.85rem;
  align-items: start;
}

.catalog-choice-section-head {
  display: grid;
  gap: 0.08rem;
  margin-bottom: 0.34rem;
}

.catalog-choice-section-head strong,
.catalog-choice-matches legend {
  color: var(--ink, #1e1e1c);
  font-size: 0.68rem;
  font-weight: 820;
  letter-spacing: 0.045em;
  text-transform: uppercase;
}

.catalog-choice-section-head small {
  color: var(--muted, #6d6b64);
  font-size: 0.64rem;
  line-height: 1.3;
}

.catalog-choice-reference-card {
  position: relative;
  display: grid;
  cursor: pointer;
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--ink, #1e1e1c) 9%, transparent);
  border-radius: 0.68rem;
  background: color-mix(in srgb, var(--surface, #fff) 97%, transparent);
}

.catalog-choice-reference-media,
.catalog-choice-candidate-media {
  position: relative;
  display: grid;
  place-items: center;
  aspect-ratio: 4 / 3;
  overflow: hidden;
  background: #fff;
}

.catalog-choice-reference-media img,
.catalog-choice-candidate-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.catalog-choice-reference-media > svg,
.catalog-choice-no-image > svg {
  width: 38%;
  color: color-mix(in srgb, var(--muted, #6d6b64) 62%, transparent);
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}

.catalog-choice-reference-copy {
  display: grid;
  gap: 0.08rem;
  min-width: 0;
  padding: 0.5rem 0.58rem 0.58rem;
}

.catalog-choice-reference-copy strong {
  color: var(--ink, #1e1e1c);
  font-size: 0.72rem;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.catalog-choice-reference-copy small {
  color: var(--muted, #6d6b64);
  font-size: 0.62rem;
}

.catalog-choice-matches {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
}

.catalog-choice-matches legend {
  margin: 0 0 0.34rem;
}

.catalog-choice-grid {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: minmax(10.5rem, 11.75rem);
  gap: 0.55rem;
  align-items: stretch;
  max-width: 100%;
  padding: 1px 2px 0.25rem;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
  scroll-snap-type: inline proximity;
}

.catalog-choice-product-card {
  position: relative;
  display: grid;
  grid-template-rows: auto minmax(5.6rem, 1fr);
  align-content: start;
  min-width: 0;
  border: 1px solid color-mix(in srgb, var(--ink, #1e1e1c) 12%, transparent);
  border-radius: 0.68rem;
  background: color-mix(in srgb, var(--surface, #fff) 98%, transparent);
  overflow: hidden;
  cursor: pointer;
  scroll-snap-align: start;
  transition: border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease;
}

.catalog-choice-product-card:hover,
.catalog-choice-reference-card:hover {
  transform: translateY(-1px);
  border-color: color-mix(in srgb, var(--accent, #4b8ecf) 62%, transparent);
}

.catalog-choice-product-card:has(input:checked),
.catalog-choice-reference-card:has(input:checked) {
  border-color: var(--accent, #4b8ecf);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent, #4b8ecf) 16%, transparent), 0 8px 20px rgba(28, 53, 77, 0.08);
}

.catalog-choice-product-card > input,
.catalog-choice-reference-card > input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
}

.catalog-choice-product-card:focus-within,
.catalog-choice-reference-card:focus-within {
  outline: 2px solid var(--accent, #4b8ecf);
  outline-offset: 3px;
}

.catalog-choice-selection {
  position: absolute;
  top: 0.45rem;
  right: 0.45rem;
  z-index: 2;
  width: 1.12rem;
  height: 1.12rem;
  border: 2px solid color-mix(in srgb, var(--ink, #1e1e1c) 38%, transparent);
  border-radius: 50%;
  background: rgba(255,255,255,0.9);
  box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}

.catalog-choice-product-card:has(input:checked) .catalog-choice-selection,
.catalog-choice-reference-card:has(input:checked) .catalog-choice-selection {
  border: 0.28rem solid var(--accent, #4b8ecf);
}

.catalog-choice-no-image {
  display: grid;
  place-items: center;
  gap: 0.25rem;
  width: 100%;
  height: 100%;
  padding: 0.75rem;
  color: var(--muted, #6d6b64);
  background: linear-gradient(145deg, #fff, #f6f8fa);
  text-align: center;
}

.catalog-choice-no-image small {
  font-size: 0.59rem;
  font-weight: 700;
  line-height: 1.25;
}

.catalog-choice-candidate-copy {
  display: grid;
  align-content: start;
  gap: 0.2rem;
  min-width: 0;
  padding: 0.52rem 0.58rem 0.62rem;
}

.catalog-choice-candidate-copy > strong {
  display: -webkit-box;
  overflow: hidden;
  color: var(--ink, #1e1e1c);
  font-size: 0.72rem;
  font-weight: 830;
  line-height: 1.24;
  overflow-wrap: anywhere;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}

.catalog-choice-candidate-copy > span,
.catalog-choice-candidate-copy > small {
  color: var(--muted, #6d6b64);
  font-size: 0.61rem;
  line-height: 1.28;
  overflow-wrap: anywhere;
}

.catalog-choice-candidate-copy > span {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}

.catalog-choice-candidate-meta {
  font-weight: 760;
}

.catalog-choice-candidate-specs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.16rem 0.28rem;
}

.catalog-choice-candidate-specs span {
  display: inline-flex;
  padding: 0.1rem 0.28rem;
  border-radius: 999px;
  background: color-mix(in srgb, var(--accent, #4b8ecf) 9%, transparent);
}

.catalog-choice-candidate-specs .catalog-choice-mobile-spec {
  display: none;
}

@media (max-width: 760px), (hover: none) {
  .catalog-choice-box .catalog-choice-candidate-copy > strong {
    -webkit-line-clamp: 4;
    line-clamp: 4;
  }

  .catalog-choice-box .catalog-choice-candidate-copy > span {
    -webkit-line-clamp: 3;
    line-clamp: 3;
  }

  .catalog-choice-candidate-specs .catalog-choice-mobile-spec {
    display: inline-flex;
  }
}

.catalog-choice-product-card.is-previewing {
  border-color: var(--accent, #4b8ecf);
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--accent, #4b8ecf) 24%, transparent);
}

.catalog-choice-preview {
  position: fixed;
  z-index: 120;
  box-sizing: border-box;
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-width: thin;
  padding: 0.95rem;
  border: 1px solid color-mix(in srgb, var(--accent, #4b8ecf) 28%, transparent);
  border-radius: 0.9rem;
  color: var(--ink, #1e1e1c);
  background: var(--surface, #fff);
  box-shadow: 0 16px 42px rgba(31, 53, 75, 0.18), 0 3px 9px rgba(31, 53, 75, 0.07);
}

.catalog-choice-preview[hidden] {
  display: none !important;
}

.catalog-choice-preview-card {
  display: grid;
  grid-template-columns: minmax(10rem, 12.5rem) minmax(0, 1fr);
  align-items: start;
  gap: 1.05rem;
}

.catalog-choice-preview-media {
  display: grid;
  place-items: center;
  aspect-ratio: 1;
  overflow: hidden;
  border: 1px solid rgba(31, 53, 75, 0.08);
  border-radius: 0.65rem;
  background: #fff;
}

.catalog-choice-preview-media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.catalog-choice-preview-copy {
  display: grid;
  align-content: start;
  gap: 0.6rem;
  min-width: 0;
}

.catalog-choice-preview-copy > h3 {
  margin: 0;
  color: var(--ink, #1e1e1c);
  font-size: 1rem;
  font-weight: 820;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.catalog-choice-preview-copy > p {
  margin: 0;
  color: var(--muted, #6d6b64);
  font-size: 0.75rem;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.catalog-choice-preview-copy > .catalog-choice-preview-meta {
  font-size: 0.68rem;
  font-weight: 760;
}

.catalog-choice-preview-specs {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin: 0;
}

.catalog-choice-preview-specs > div {
  display: grid;
  gap: 0.14rem;
  max-width: 100%;
  padding: 0.42rem 0.62rem;
  border-radius: 0.5rem;
  background: color-mix(in srgb, var(--accent, #4b8ecf) 8%, transparent);
  overflow-wrap: anywhere;
}

.catalog-choice-preview-specs dt {
  color: var(--muted, #6d6b64);
  font-size: 0.63rem;
  line-height: 1.25;
}

.catalog-choice-preview-specs dd {
  margin: 0;
  font-size: 0.78rem;
  font-weight: 760;
  line-height: 1.3;
}

.catalog-choice-preview-offers {
  border-top: 1px solid rgba(31, 53, 75, 0.1);
  padding-top: 0.6rem;
}

.catalog-choice-preview-offers h4 {
  margin: 0 0 0.4rem;
  font-size: 0.78rem;
}

.catalog-choice-preview-offers dl {
  display: grid;
  gap: 0.35rem;
  margin: 0;
}

.catalog-choice-preview-offers dl > div {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 0.25rem 1rem;
  font-size: 0.8rem;
}

.catalog-choice-preview-offers dt {
  overflow-wrap: anywhere;
  min-width: 0;
}

.catalog-choice-preview-offers dd {
  margin: 0;
  font-weight: 760;
  white-space: nowrap;
}

.catalog-choice-preview-offers p {
  margin: 0;
  color: var(--muted, #6d6b64);
  font-size: 0.75rem;
}

.catalog-choice-preview-description {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
}

@media (max-width: 600px) {
  .catalog-choice-preview {
    padding: 0.7rem;
  }

  .catalog-choice-preview-card {
    grid-template-columns: 5.5rem minmax(0, 1fr);
    gap: 0.7rem;
  }

  .catalog-choice-preview-copy > h3 {
    font-size: 0.88rem;
  }
}

.catalog-choice-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 0.7rem;
  padding-top: 0.58rem;
  border-top: 1px solid color-mix(in srgb, var(--ink, #1e1e1c) 10%, transparent);
}

.catalog-choice-form-status {
  order: 3;
  flex: 1 1 100%;
  color: var(--danger, #b1345a);
  font-size: 0.66rem;
  line-height: 1.35;
}

.catalog-choice-form-status:empty {
  display: none;
}

.catalog-choice-private-option {
  display: grid;
  grid-template-columns: auto auto minmax(0, 1fr);
  gap: 0.45rem;
  align-items: center;
  min-width: 0;
  cursor: pointer;
}

.catalog-choice-private-option > input {
  width: 0.95rem;
  height: 0.95rem;
  margin: 0;
  accent-color: var(--accent, #4b8ecf);
}

.catalog-choice-private-icon {
  display: grid;
  place-items: center;
  width: 1.8rem;
  height: 1.8rem;
  border-radius: 0.52rem;
  color: var(--accent-strong, #2f6fae);
  background: color-mix(in srgb, var(--accent, #4b8ecf) 10%, transparent);
}

.catalog-choice-private-icon svg {
  width: 0.95rem;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}

.catalog-choice-private-option > span:last-child {
  display: grid;
  gap: 0.1rem;
}

.catalog-choice-private-option strong {
  color: var(--ink, #1e1e1c);
  font-size: 0.72rem;
}

.catalog-choice-private-option small {
  color: var(--muted, #6d6b64);
  font-size: 0.62rem;
}

.catalog-choice-actions .ghost-button {
  flex: 0 0 auto;
  min-height: 2.25rem;
  padding: 0.48rem 0.78rem;
  font-size: 0.72rem;
}

@media (max-width: 760px) {
  .catalog-choice-comparison {
    grid-template-columns: 1fr;
  }

  .catalog-choice-reference-card {
    display: grid;
    grid-template-columns: 5.2rem minmax(0, 1fr);
  }

  .catalog-choice-reference-media {
    aspect-ratio: 1 / 1;
  }

  .catalog-choice-reference-copy {
    padding-right: 2.2rem;
  }

  .catalog-choice-grid {
    grid-auto-columns: minmax(10rem, 11rem);
  }

  .catalog-choice-actions {
    align-items: stretch;
    flex-direction: column;
  }

  .catalog-choice-actions .ghost-button {
    width: 100%;
  }
}

body.has-catalog-choice-dialog {
  overflow: hidden;
}

.catalog-choice-dialog-overlay {
  position: fixed;
  inset: 0;
  z-index: 140;
  display: grid;
  place-items: center;
  padding: 1rem;
  background: rgba(25, 31, 38, 0.38);
  backdrop-filter: blur(9px) saturate(0.92);
  -webkit-backdrop-filter: blur(9px) saturate(0.92);
}

.catalog-choice-dialog {
  display: grid;
  gap: 0.7rem;
  width: min(68rem, calc(100vw - 2rem));
  max-height: calc(100dvh - 2rem);
  padding: clamp(0.85rem, 1.6vw, 1.15rem);
  overflow: hidden;
  border: 1px solid color-mix(in srgb, var(--accent, #4b8ecf) 24%, transparent);
  border-radius: 1rem;
  background: color-mix(in srgb, var(--surface, #fff) 98%, var(--accent, #4b8ecf) 2%);
  box-shadow:
    0 28px 80px rgba(20, 31, 42, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.92);
}

.catalog-choice-dialog-header {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 1rem;
}

.catalog-choice-dialog-header > div {
  display: grid;
  gap: 0.12rem;
}

.catalog-choice-dialog-header small,
.catalog-choice-dialog-section-label {
  color: var(--accent-strong, #2f6fae);
  font-size: 0.64rem;
  font-weight: 850;
  letter-spacing: 0.055em;
  text-transform: uppercase;
}

.catalog-choice-dialog-header h2 {
  margin: 0;
  color: var(--ink, #1e1e1c);
  font-size: clamp(1.04rem, 2vw, 1.28rem);
  line-height: 1.15;
}

.catalog-choice-dialog-close,
.catalog-choice-dialog-scroll {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  border: 1px solid color-mix(in srgb, var(--ink, #1e1e1c) 10%, transparent);
  background: rgba(255, 255, 255, 0.74);
  color: var(--muted, #6d6b64);
  cursor: pointer;
  font: inherit;
}

.catalog-choice-dialog-close {
  width: 2rem;
  height: 2rem;
  padding: 0;
  border-radius: 50%;
  font-size: 1.15rem;
  line-height: 1;
}

.catalog-choice-dialog-close:hover,
.catalog-choice-dialog-close:focus-visible,
.catalog-choice-dialog-scroll:hover,
.catalog-choice-dialog-scroll:focus-visible {
  border-color: color-mix(in srgb, var(--accent, #4b8ecf) 44%, transparent);
  color: var(--accent-strong, #2f6fae);
  outline: 2px solid color-mix(in srgb, var(--accent, #4b8ecf) 18%, transparent);
  outline-offset: 2px;
}

.catalog-choice-dialog-intro {
  max-width: 54rem;
  margin: 0;
  color: var(--muted, #6d6b64);
  font-size: 0.78rem;
  line-height: 1.42;
}

.catalog-choice-dialog-product {
  display: flex;
  align-items: baseline;
  gap: 0.35rem 0.7rem;
  min-width: 0;
  padding: 0.52rem 0.68rem;
  border-radius: 0.68rem;
  background: color-mix(in srgb, var(--accent, #4b8ecf) 7%, transparent);
}

.catalog-choice-dialog-product strong {
  min-width: 0;
  color: var(--ink, #1e1e1c);
  font-size: 0.82rem;
  overflow-wrap: anywhere;
}

.catalog-choice-dialog-product span {
  flex: 0 0 auto;
  color: var(--muted, #6d6b64);
  font-size: 0.68rem;
}

.catalog-choice-dialog-form {
  display: grid;
  gap: 0.42rem;
  min-height: 0;
  overflow: hidden;
}

.catalog-choice-dialog-track-shell {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 0.48rem;
  align-items: center;
  min-width: 0;
}

.catalog-choice-dialog-track {
  grid-auto-columns: minmax(10.75rem, 12.25rem);
  max-height: min(29rem, calc(100dvh - 18rem));
  padding: 0.18rem 0.16rem 0.42rem;
  overflow-x: auto;
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scroll-snap-type: x mandatory;
  touch-action: pan-x pinch-zoom;
  -webkit-overflow-scrolling: touch;
}

.catalog-choice-dialog-track .catalog-choice-product-card {
  min-height: 15rem;
  scroll-snap-align: start;
}

.catalog-choice-dialog-scroll {
  width: 2rem;
  height: 3.3rem;
  padding: 0;
  border-radius: 999px;
  font-size: 1.4rem;
  line-height: 1;
}

.catalog-choice-dialog-footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0.5rem;
  min-height: 2.35rem;
  padding-top: 0.58rem;
  border-top: 1px solid color-mix(in srgb, var(--ink, #1e1e1c) 10%, transparent);
}

.catalog-choice-dialog-status {
  flex: 1 1 auto;
  color: #9a4057;
  font-size: 0.68rem;
  font-weight: 720;
}

.catalog-choice-dialog-cancel {
  min-height: 2.2rem;
  padding: 0.45rem 0.72rem;
  border: 0;
  border-radius: 0.62rem;
  background: transparent;
  color: var(--muted, #6d6b64);
  cursor: pointer;
  font: inherit;
  font-size: 0.72rem;
  font-weight: 780;
}

.catalog-choice-dialog-cancel:hover,
.catalog-choice-dialog-cancel:focus-visible {
  background: color-mix(in srgb, var(--ink, #1e1e1c) 6%, transparent);
  color: var(--ink, #1e1e1c);
}

.catalog-choice-dialog-submit {
  min-height: 2.2rem;
  padding: 0.45rem 0.82rem;
  font-size: 0.72rem;
}

.catalog-choice-dialog-submit:disabled {
  cursor: not-allowed;
  opacity: 0.48;
}

.catalog-choice-dialog-loading,
.catalog-choice-dialog-empty {
  display: grid;
  place-items: center;
  min-height: 9rem;
  padding: 1rem;
  border-radius: 0.72rem;
  background: color-mix(in srgb, var(--accent, #4b8ecf) 5%, transparent);
  color: var(--muted, #6d6b64);
  font-size: 0.78rem;
  text-align: center;
}

@media (max-width: 760px) {
  .catalog-choice-dialog-overlay {
    align-items: end;
    padding: 0.5rem;
  }

  .catalog-choice-dialog {
    width: 100%;
    max-height: calc(100dvh - 1rem);
    padding: 0.82rem;
    border-radius: 1rem;
  }

  .catalog-choice-dialog-intro {
    font-size: 0.72rem;
  }

  .catalog-choice-dialog-product {
    display: grid;
    gap: 0.08rem;
  }

  .catalog-choice-dialog-track-shell {
    grid-template-columns: minmax(0, 1fr);
  }

  .catalog-choice-dialog-scroll {
    display: none;
  }

  .catalog-choice-dialog-track {
    grid-auto-columns: minmax(13.5rem, 78vw);
    max-height: calc(100dvh - 20rem);
  }

  .catalog-choice-dialog-footer {
    flex-wrap: wrap;
  }

  .catalog-choice-dialog-status {
    flex-basis: 100%;
  }
}

.catalog-import-confirmation {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  align-items: center;
  gap: 0.32rem;
  margin: 0.45rem 0 0;
  padding: 0.38rem;
  border: 1px solid rgba(var(--action-rgb), 0.12);
  border-radius: 0.8rem;
  background: rgba(255, 255, 255, 0.48);
  color: var(--ink);
  box-shadow:
    0 8px 22px rgba(50, 59, 70, 0.07),
    inset 0 1px 0 rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(10px) saturate(1.04);
  -webkit-backdrop-filter: blur(10px) saturate(1.04);
}

.catalog-import-confirmation-question {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.42rem;
  min-width: 0;
  padding: 0.08rem 0.2rem;
  font-size: 0.72rem;
  font-weight: 820;
  line-height: 1.18;
  text-align: center;
}

.catalog-import-confirmation-question > span:last-child {
  min-width: 0;
  overflow-wrap: anywhere;
}

.catalog-import-confirmation-icon {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 1.55rem;
  height: 1.55rem;
  border-radius: 50%;
  background: rgba(var(--action-rgb), 0.1);
  color: var(--action);
}

.catalog-import-confirmation-icon svg {
  width: 0.95rem;
  height: 0.95rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.catalog-import-confirmation-actions {
  display: inline-grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.18rem;
  width: 100%;
  padding: 0.18rem;
  border: 1px solid rgba(72, 83, 97, 0.08);
  border-radius: 0.65rem;
  background: rgba(72, 83, 97, 0.06);
}

.catalog-import-confirmation button,
.catalog-import-confirmation a {
  min-height: 1.8rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 0.48rem;
  padding: 0 0.55rem;
  background: transparent;
  color: var(--muted);
  font: inherit;
  font-size: 0.7rem;
  font-weight: 860;
  line-height: 1;
  text-decoration: none;
  cursor: pointer;
  transition: background 140ms ease, color 140ms ease, box-shadow 140ms ease;
}

.catalog-import-confirmation .catalog-import-confirmation-yes {
  background: var(--action);
  color: #fff;
  box-shadow: 0 4px 10px rgba(var(--action-rgb), 0.18);
}

.catalog-import-confirmation .catalog-import-confirmation-yes:hover,
.catalog-import-confirmation .catalog-import-confirmation-yes:focus-visible {
  background: var(--action-hover);
  outline: 0;
}

.catalog-import-confirmation .catalog-import-confirmation-no:hover,
.catalog-import-confirmation .catalog-import-confirmation-no:focus-visible {
  background: rgba(255, 255, 255, 0.78);
  color: var(--ink);
  outline: 0;
}

@media (max-width: 560px) {
  .catalog-import-confirmation-question {
    font-size: 0.69rem;
  }
}

@media (max-width: 980px) {
  .account-ai-kpis,
  .account-ai-feature-facts,
  .account-ai-value-grid,
  .account-ai-cost-summary {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .account-ai-hero,
  .account-ai-section-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .account-ai-two-column,
  .account-ai-data-columns {
    grid-template-columns: 1fr;
  }

  .account-ai-feature-title {
    grid-template-columns: 30px minmax(0, 1fr);
  }

  .account-ai-feature-title .account-ai-status {
    grid-column: 2;
  }

  .account-ai-feature-facts {
    margin-left: 41px;
  }

  .account-ai-legend {
    justify-content: flex-start;
  }
}

@media (max-width: 560px) {
  .account-ai-kpis,
  .account-ai-feature-facts,
  .account-ai-value-grid,
  .account-ai-cost-summary {
    grid-template-columns: 1fr;
  }

  .account-ai-hero,
  .account-ai-feature-panel,
  .account-ai-cost-lab {
    padding: 16px;
  }

  .account-ai-feature-facts {
    margin-left: 0;
  }

  .account-ai-credit-row,
  .account-ai-activity-row {
    align-items: flex-start;
  }
}

/* Product community actions: one calm, contextual layout in every product view. */
.product-card-box,
.catalog-mini-card,
.catalog-detail-card,
.product-detail-card {
  container-type: inline-size;
}

.product-community-like-button,
.product-community-bookmark-button,
.product-card .product-add-inventory-button,
.product-card .product-add-inventory-status,
.catalog-mini-card .product-add-inventory-button,
.catalog-mini-card .product-add-inventory-status,
.product-detail-action-row .product-add-inventory-button,
.product-detail-action-row .product-add-inventory-status {
  border-color: rgba(72, 83, 97, 0.1);
  background: rgba(255, 255, 255, 0.9);
  box-shadow:
    0 8px 22px rgba(50, 59, 70, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(10px) saturate(1.08);
  -webkit-backdrop-filter: blur(10px) saturate(1.08);
}

.product-add-inventory-button:not(.is-done):not(:disabled):hover,
.product-add-inventory-button:not(.is-done):not(:disabled):focus-visible {
  border-color: rgba(194, 143, 21, 0.24);
  background: #ffd36a;
  color: #72550c;
  box-shadow:
    0 9px 22px rgba(112, 86, 25, 0.18),
    inset 0 1px 0 rgba(255, 255, 255, 0.76);
  filter: none;
  outline: 0;
}

.product-community-like-button .product-like-count {
  right: -3px;
  bottom: -2px;
  min-width: 17px;
  height: 17px;
  border-width: 1.5px;
  box-shadow: 0 3px 8px rgba(50, 59, 70, 0.12);
}

.product-community-like-button svg {
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

[data-community-tooltip] {
  position: relative;
}

[data-community-tooltip]::after {
  content: attr(data-community-tooltip);
  position: absolute;
  left: 50%;
  bottom: calc(100% + 9px);
  z-index: 120;
  width: max-content;
  max-width: min(240px, 72vw);
  padding: 6px 9px;
  border: 1px solid rgba(72, 83, 97, 0.12);
  border-radius: 8px;
  background: rgba(35, 37, 40, 0.94);
  color: #fff;
  box-shadow: 0 8px 20px rgba(35, 37, 40, 0.18);
  font-size: 0.68rem;
  font-weight: 760;
  line-height: 1.25;
  white-space: normal;
  text-align: center;
  opacity: 0;
  transform: translate(-50%, 3px);
  transition: opacity 120ms ease, transform 120ms ease;
  pointer-events: none;
}

[data-community-tooltip]:hover::after,
[data-community-tooltip]:focus-visible::after {
  opacity: 1;
  transform: translate(-50%, 0);
}

[data-community-tooltip]:focus-visible {
  outline: 2px solid rgba(var(--action-rgb), 0.48);
  outline-offset: 3px;
}

/* Keep the right toolbar's tooltip boxes inside the viewport, including
   their invisible state, which still contributes to horizontal scrolling. */
.product-detail-toolbar :is(.product-action-counter, .product-action-button)[data-community-tooltip]::after {
  left: auto;
  right: 0;
  transform: translateY(3px);
}
.product-detail-toolbar :is(.product-action-counter, .product-action-button)[data-community-tooltip]:is(:hover, :focus-visible)::after {
  transform: translateY(0);
}

.product-card-publication-status {
  grid-area: status;
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  padding: 0;
  border: 1px solid rgba(72, 83, 97, 0.1);
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.9);
  color: #7b6f6c;
  box-shadow:
    0 8px 22px rgba(50, 59, 70, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.96);
  pointer-events: auto;
  cursor: help;
  backdrop-filter: blur(10px) saturate(1.08);
  -webkit-backdrop-filter: blur(10px) saturate(1.08);
}

.product-card-publication-status svg {
  width: 17px;
  height: 17px;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.product-card-publication-status:hover,
.product-card-publication-status:focus-visible {
  color: #985665;
  background: #fff;
  outline: 2px solid rgba(var(--action-rgb), 0.32);
  outline-offset: 2px;
}

.product-card-publication-status.is-action {
  color: var(--action);
  cursor: pointer;
  text-decoration: none;
}

/* Product gallery grids: publication status, bookmark, inventory and heart share the lower image edge. */
.gallery.product-view-grid-4 .product-card .product-card-metrics,
.gallery.product-view-grid-5 .product-card .product-card-metrics,
.gallery.product-view-grid-6 .product-card .product-card-metrics,
.gallery.product-view-grid-8 .product-card .product-card-metrics {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  min-height: 0;
  margin: 0;
  padding: 0;
  pointer-events: none;
}

.gallery.product-view-grid-4 .product-card .product-card-metrics .product-card-like-button,
.gallery.product-view-grid-5 .product-card .product-card-metrics .product-card-like-button,
.gallery.product-view-grid-6 .product-card .product-card-metrics .product-card-like-button,
.gallery.product-view-grid-8 .product-card .product-card-metrics .product-card-like-button {
  position: absolute;
  top: calc(100cqi - min(18px, 10.5cqi));
  left: calc(50% + min(60px, 36cqi));
  z-index: 7;
  width: min(36px, 21cqi);
  height: min(36px, 21cqi);
  min-width: min(36px, 21cqi);
  min-height: min(36px, 21cqi);
  border: 1px solid rgba(72, 83, 97, 0.1);
  border-radius: 50%;
  transform: translateX(-50%);
  pointer-events: auto;
}

.gallery.product-view-grid-4 .product-card .product-card-metrics .product-community-bookmark-button,
.gallery.product-view-grid-5 .product-card .product-card-metrics .product-community-bookmark-button,
.gallery.product-view-grid-6 .product-card .product-card-metrics .product-community-bookmark-button,
.gallery.product-view-grid-8 .product-card .product-card-metrics .product-community-bookmark-button {
  position: absolute;
  top: calc(100cqi - min(18px, 10.5cqi));
  left: calc(50% - min(20px, 12cqi));
  z-index: 7;
  width: min(36px, 21cqi);
  height: min(36px, 21cqi);
  min-width: min(36px, 21cqi);
  min-height: min(36px, 21cqi);
  border-radius: 50%;
  transform: translateX(-50%);
}

.gallery.product-view-grid-4 .product-card .product-card-publication-status,
.gallery.product-view-grid-5 .product-card .product-card-publication-status,
.gallery.product-view-grid-6 .product-card .product-card-publication-status,
.gallery.product-view-grid-8 .product-card .product-card-publication-status {
  position: absolute;
  grid-area: auto;
  top: calc(100cqi - min(18px, 10.5cqi));
  left: calc(50% - min(60px, 36cqi));
  z-index: 7;
  width: min(36px, 21cqi);
  height: min(36px, 21cqi);
  min-width: min(36px, 21cqi);
  min-height: min(36px, 21cqi);
  border-radius: 50%;
  transform: translateX(-50%);
  pointer-events: auto;
}

.gallery.product-view-grid-4 .product-card :is(.product-card-publication-status, .product-card-metrics .product-community-bookmark-button, .product-card-metrics .product-add-inventory-button, .product-card-metrics .product-add-inventory-status, .product-card-metrics .product-card-like-button) svg,
.gallery.product-view-grid-5 .product-card :is(.product-card-publication-status, .product-card-metrics .product-community-bookmark-button, .product-card-metrics .product-add-inventory-button, .product-card-metrics .product-add-inventory-status, .product-card-metrics .product-card-like-button) svg,
.gallery.product-view-grid-6 .product-card :is(.product-card-publication-status, .product-card-metrics .product-community-bookmark-button, .product-card-metrics .product-add-inventory-button, .product-card-metrics .product-add-inventory-status, .product-card-metrics .product-card-like-button) svg,
.gallery.product-view-grid-8 .product-card :is(.product-card-publication-status, .product-card-metrics .product-community-bookmark-button, .product-card-metrics .product-add-inventory-button, .product-card-metrics .product-add-inventory-status, .product-card-metrics .product-card-like-button) svg {
  width: min(20px, 12cqi);
  height: min(20px, 12cqi);
}

.gallery.product-view-grid-4 .product-card .product-card-metrics .product-add-inventory-button,
.gallery.product-view-grid-4 .product-card .product-card-metrics .product-add-inventory-status,
.gallery.product-view-grid-5 .product-card .product-card-metrics .product-add-inventory-button,
.gallery.product-view-grid-5 .product-card .product-card-metrics .product-add-inventory-status,
.gallery.product-view-grid-6 .product-card .product-card-metrics .product-add-inventory-button,
.gallery.product-view-grid-6 .product-card .product-card-metrics .product-add-inventory-status,
.gallery.product-view-grid-8 .product-card .product-card-metrics .product-add-inventory-button,
.gallery.product-view-grid-8 .product-card .product-card-metrics .product-add-inventory-status {
  position: absolute;
  top: calc(100cqi - min(18px, 10.5cqi));
  left: calc(50% + min(20px, 12cqi));
  right: auto;
  z-index: 7;
  width: min(36px, 21cqi);
  height: min(36px, 21cqi);
  min-width: min(36px, 21cqi);
  min-height: min(36px, 21cqi);
  flex-basis: min(36px, 21cqi);
  border: 1px solid rgba(72, 83, 97, 0.1);
  border-radius: 50%;
  transform: translateX(-50%);
  pointer-events: auto;
}

/* Without the optional publication status, center the remaining three actions as a group. */
.gallery:is(.product-view-grid-4, .product-view-grid-5, .product-view-grid-6, .product-view-grid-8)
  .product-card-box:not(:has(> .product-card-publication-status))
  .product-card-metrics .product-community-bookmark-button {
  left: calc(50% - min(40px, 24cqi));
}

.gallery:is(.product-view-grid-4, .product-view-grid-5, .product-view-grid-6, .product-view-grid-8)
  .product-card-box:not(:has(> .product-card-publication-status))
  .product-card-metrics :is(.product-add-inventory-button, .product-add-inventory-status) {
  left: 50%;
}

.gallery:is(.product-view-grid-4, .product-view-grid-5, .product-view-grid-6, .product-view-grid-8)
  .product-card-box:not(:has(> .product-card-publication-status))
  .product-card-metrics .product-card-like-button {
  left: calc(50% + min(40px, 24cqi));
}

.gallery.product-view-grid-4 .product-card .product-community-meta,
.gallery.product-view-grid-5 .product-card .product-community-meta,
.gallery.product-view-grid-6 .product-card .product-community-meta,
.gallery.product-view-grid-8 .product-card .product-community-meta {
  position: absolute;
  top: 10px;
  left: 10px;
  width: fit-content;
  max-width: calc(100% - 66px);
  min-height: 24px;
  margin: 0;
  padding: 0 8px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.82);
  white-space: nowrap;
  pointer-events: auto;
}

.gallery.product-view-grid-4 .product-info,
.gallery.product-view-grid-5 .product-info,
.gallery.product-view-grid-6 .product-info,
.gallery.product-view-grid-8 .product-info {
  padding-top: 24px;
}

.gallery.product-view-grid-4 .product-info,
.gallery.product-view-grid-5 .product-info,
.gallery.product-view-grid-6 .product-info,
.gallery.product-view-grid-4 .product-info:has(.product-private-policy-note),
.gallery.product-view-grid-5 .product-info:has(.product-private-policy-note),
.gallery.product-view-grid-6 .product-info:has(.product-private-policy-note) {
  height: auto;
  max-height: none;
  overflow: visible;
}

.gallery.product-view-grid-8 .product-card {
  padding: 0;
}

.gallery.product-view-grid-8 .product-image {
  margin: 0;
}

/* Product lists keep the same cloud, inventory, heart order at the right edge. */
.product-view-list .product-card .product-card-metrics {
  width: auto;
  grid-template-columns: auto auto auto auto auto;
  grid-template-areas: "meta status bookmark inventory like";
  gap: 7px;
}

.product-view-list .product-card .product-community-meta {
  max-width: min(32vw, 360px);
}

.product-view-list .product-card .product-card-metrics .product-card-like-button,
.product-view-list .product-card .product-card-publication-status {
  width: 32px;
  height: 32px;
  min-height: 32px;
}

.product-view-list .product-card .product-card-metrics .product-add-inventory-button,
.product-view-list .product-card .product-card-metrics .product-add-inventory-status {
  width: 36px;
  height: 36px;
  min-height: 36px;
}

/* Product lists with media use the same compact ordered action group. */
.product-view-list-image .product-card .product-card-metrics {
  position: static;
  width: auto;
  grid-template-columns: auto auto auto auto auto;
  grid-template-areas: "meta status bookmark inventory like";
  gap: 7px;
}

.product-view-list-image .product-card .product-card-metrics .product-card-like-button {
  position: relative;
  grid-area: like;
  top: auto;
  left: auto;
  z-index: auto;
  width: 32px;
  height: 32px;
  min-height: 32px;
  border: 1px solid rgba(72, 83, 97, 0.1);
  transform: none;
  pointer-events: auto;
}
.product-view-list .product-card .product-community-bookmark-button,
.product-view-list-image .product-card .product-community-bookmark-button {
  position: relative;
  top: auto;
  left: auto;
  width: 32px;
  height: 32px;
  transform: none;
}

.product-view-list-image .product-card .product-card-publication-status {
  position: relative;
  grid-area: status;
  top: auto;
  left: auto;
  z-index: auto;
  width: 32px;
  height: 32px;
  transform: none;
}

.product-view-list-image .product-card .product-card-metrics .product-add-inventory-button,
.product-view-list-image .product-card .product-card-metrics .product-add-inventory-status {
  width: 36px;
  height: 36px;
  min-height: 36px;
}

/* Alternatives and accessories use the same visual language as catalog cards. */
/* Reserve space below the image for the overlapping action buttons and counters. */
.catalog-mini-card-grid.product-view-grid-4 .catalog-mini-card:has(.catalog-mini-card-actions) .catalog-mini-card-copy > strong,
.catalog-mini-card-grid.product-view-grid-6 .catalog-mini-card:has(.catalog-mini-card-actions) .catalog-mini-card-copy > strong,
.catalog-mini-card-grid.product-view-grid-8 .catalog-mini-card:has(.catalog-mini-card-actions) .catalog-mini-card-copy > strong {
  margin-top: 24px;
}

.catalog-mini-card-grid.product-view-grid-4 .catalog-mini-card-actions,
.catalog-mini-card-grid.product-view-grid-6 .catalog-mini-card-actions,
.catalog-mini-card-grid.product-view-grid-8 .catalog-mini-card-actions {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  margin: 0;
  align-self: stretch;
  justify-self: stretch;
  pointer-events: none;
}

.catalog-mini-card-grid.product-view-grid-4 .catalog-mini-card-actions .product-community-like-button,
.catalog-mini-card-grid.product-view-grid-6 .catalog-mini-card-actions .product-community-like-button,
.catalog-mini-card-grid.product-view-grid-8 .catalog-mini-card-actions .product-community-like-button {
  position: absolute;
  grid-area: auto;
  left: calc(50% + 43px);
  z-index: 7;
  width: 34px;
  height: 34px;
  min-height: 34px;
  transform: translateX(-50%);
  pointer-events: auto;
}
.catalog-mini-card-grid.product-view-grid-4 .catalog-mini-card-actions .product-community-bookmark-button,
.catalog-mini-card-grid.product-view-grid-6 .catalog-mini-card-actions .product-community-bookmark-button,
.catalog-mini-card-grid.product-view-grid-8 .catalog-mini-card-actions .product-community-bookmark-button {
  position: absolute;
  right: auto;
  left: calc(50% - 43px);
  z-index: 7;
  width: 34px;
  height: 34px;
  transform: translateX(-50%);
  pointer-events: auto;
}

.catalog-mini-card-grid.product-view-grid-4 .catalog-mini-card-actions .product-community-like-button,
.catalog-mini-card-grid.product-view-grid-4 .catalog-mini-card-actions .product-community-bookmark-button {
  top: calc(100cqi + 17px);
}

.catalog-mini-card-grid.product-view-grid-6 .catalog-mini-card-actions .product-community-like-button,
.catalog-mini-card-grid.product-view-grid-8 .catalog-mini-card-actions .product-community-like-button,
.catalog-mini-card-grid.product-view-grid-6 .catalog-mini-card-actions .product-community-bookmark-button,
.catalog-mini-card-grid.product-view-grid-8 .catalog-mini-card-actions .product-community-bookmark-button {
  top: calc(100cqi + 13px);
}

.catalog-mini-card-grid.product-view-grid-4 .catalog-mini-card-actions .product-add-inventory-button,
.catalog-mini-card-grid.product-view-grid-4 .catalog-mini-card-actions .product-add-inventory-status,
.catalog-mini-card-grid.product-view-grid-6 .catalog-mini-card-actions .product-add-inventory-button,
.catalog-mini-card-grid.product-view-grid-6 .catalog-mini-card-actions .product-add-inventory-status,
.catalog-mini-card-grid.product-view-grid-8 .catalog-mini-card-actions .product-add-inventory-button,
.catalog-mini-card-grid.product-view-grid-8 .catalog-mini-card-actions .product-add-inventory-status {
  position: absolute;
  right: auto;
  left: 50%;
  z-index: 7;
  width: 40px;
  height: 40px;
  min-height: 40px;
  transform: translateX(-50%);
  pointer-events: auto;
}

.catalog-mini-card-grid.product-view-grid-4 .catalog-mini-card-actions .product-add-inventory-button,
.catalog-mini-card-grid.product-view-grid-4 .catalog-mini-card-actions .product-add-inventory-status {
  top: calc(100cqi + 14px);
}

.catalog-mini-card-grid.product-view-grid-6 .catalog-mini-card-actions .product-add-inventory-button,
.catalog-mini-card-grid.product-view-grid-6 .catalog-mini-card-actions .product-add-inventory-status,
.catalog-mini-card-grid.product-view-grid-8 .catalog-mini-card-actions .product-add-inventory-button,
.catalog-mini-card-grid.product-view-grid-8 .catalog-mini-card-actions .product-add-inventory-status {
  top: calc(100cqi + 10px);
}

.catalog-mini-card-grid.product-view-grid-4 .catalog-mini-card-actions .product-compatibility-text-action,
.catalog-mini-card-grid.product-view-grid-6 .catalog-mini-card-actions .product-compatibility-text-action,
.catalog-mini-card-grid.product-view-grid-8 .catalog-mini-card-actions .product-compatibility-text-action {
  position: absolute;
  top: 8px;
  left: 8px;
  z-index: 7;
  min-height: 26px;
  max-width: calc(100% - 58px);
  padding: 3px 7px;
  border: 1px solid rgba(72, 83, 97, 0.08);
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 5px 16px rgba(50, 59, 70, 0.08);
  pointer-events: auto;
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.catalog-mini-card-grid.product-view-list .catalog-mini-card-actions,
.catalog-mini-card-grid.product-view-list-image .catalog-mini-card-actions {
  position: static;
  width: auto;
  grid-template-columns: auto auto auto;
  grid-template-areas: "bookmark inventory like";
  gap: 6px;
}

.catalog-mini-card-grid.product-view-list .catalog-mini-card-actions .product-community-like-button,
.catalog-mini-card-grid.product-view-list .catalog-mini-card-actions .product-community-bookmark-button,
.catalog-mini-card-grid.product-view-list .catalog-mini-card-actions .product-add-inventory-button,
.catalog-mini-card-grid.product-view-list .catalog-mini-card-actions .product-add-inventory-status,
.catalog-mini-card-grid.product-view-list-image .catalog-mini-card-actions .product-community-like-button,
.catalog-mini-card-grid.product-view-list-image .catalog-mini-card-actions .product-community-bookmark-button,
.catalog-mini-card-grid.product-view-list-image .catalog-mini-card-actions .product-add-inventory-button,
.catalog-mini-card-grid.product-view-list-image .catalog-mini-card-actions .product-add-inventory-status {
  position: relative;
  top: auto;
  right: auto;
  left: auto;
  z-index: 7;
  width: 34px;
  height: 34px;
  min-height: 34px;
  transform: none;
}

/* Detail views: controls form a compact toolbar above the title. */
.product-detail-action-row {
  position: static;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-self: start;
  width: fit-content;
  max-width: 100%;
  gap: 7px;
}

.product-detail-toolbar .product-detail-action-row {
  order: 0;
  flex: 0 1 auto;
  justify-content: flex-end;
  width: auto;
  margin-left: auto;
}

.product-detail-action-row .product-community-meta {
  order: 2;
  justify-self: auto;
  margin: 0;
}

.product-detail-action-row .product-compatibility-text-action { order: 1; }
.product-detail-action-row .product-community-like-button {
  order: 5;
  width: 38px;
  height: 38px;
  min-height: 38px;
}
.product-detail-action-row .product-community-bookmark-button {
  order: 3;
  width: 38px;
  height: 38px;
  min-height: 38px;
}

.product-detail-action-row .product-add-inventory-button,
.product-detail-action-row .product-add-inventory-status {
  order: 4;
  align-self: center;
  width: 38px;
  height: 38px;
  min-height: 38px;
  flex-basis: 38px;
}

.catalog-detail-card .product-detail-action-row .product-community-like-button {
  position: absolute;
  grid-area: auto;
  z-index: 8;
  width: 42px;
  height: 42px;
  min-height: 42px;
  transform: translateX(-50%);
}

.catalog-detail-card .product-detail-action-row .product-community-like-button {
  top: calc(39cqi - 6px);
  left: calc(19.5cqi + 10px);
}

@media (max-width: 760px) {
  .catalog-detail-heading {
    align-items: flex-start;
    flex-direction: column;
  }

  .catalog-detail-main h1 {
    max-width: 100%;
  }

  .catalog-detail-card .product-detail-action-row .product-community-like-button {
    top: calc(100cqi + 3px);
    left: 50%;
  }

  .product-view-list .product-card .product-card-metrics {
    justify-self: end;
    width: auto;
  }

  .product-view-list .product-card .product-community-meta,
  .product-view-list-image .product-card .product-community-meta {
    display: none;
  }

  .product-view-list-image .product-card .product-card-metrics {
    position: static;
    grid-column: 1;
    grid-row: 2;
    justify-self: end;
    width: auto;
    margin-top: 4px;
  }

  .product-view-list-image .product-card .product-card-metrics .product-card-like-button {
    top: auto;
    left: auto;
    width: 32px;
    height: 32px;
    min-height: 32px;
  }

  .product-view-list-image .product-card .product-card-publication-status {
    top: auto;
    left: auto;
    width: 32px;
    height: 32px;
  }
}

@media (max-width: 900px) {
  .quick-import-head {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .quick-import-form {
    grid-template-columns: 1fr;
  }

  .quick-import-importbar {
    grid-column: 1;
    grid-template-columns: 1fr;
  }
}

@media (max-width: 620px) {
  .quick-import {
    padding: 14px;
  }

  .quick-import-head {
    margin-bottom: 14px;
  }

  .quick-import-privacy {
    grid-template-columns: 24px minmax(0, 1fr);
    padding: 9px 10px;
  }

  .quick-import-choice,
  .quick-import-method,
  .quick-import-paste,
  .quick-import-drop {
    min-height: 118px;
  }

  .quick-import-importbar {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .quick-import-actions {
    grid-template-columns: minmax(0, 1fr) auto;
    min-width: 0;
  }

  .quick-import-actions small,
  .quick-import-status {
    text-align: left;
  }
}

/* Touch devices: keep every card action above its full-card link and large enough to tap. */
@media (hover: none), (pointer: coarse) {
  .quick-import-paste {
    cursor: pointer;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
  }

  .quick-import-paste .quick-import-desktop-help {
    display: none;
  }

  .quick-import-paste .quick-import-touch-help {
    display: block;
  }

  .product-card button,
  .product-card a,
  .catalog-mini-card button,
  .catalog-mini-card a,
  .project-card button,
  .project-card a,
  .project-group-action,
  .project-engagement-button,
  .project-area-tab,
  .category-chip,
  .category-reset,
  .category-token,
  .category-more,
  .product-spec-filter-toggle,
  .product-scope-option,
  .quick-import-copy,
  .polygon-modal button {
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
  }

  .product-card .product-card-metrics .product-add-inventory-button,
  .product-card .product-card-metrics .product-card-like-button,
  .product-community-bookmark-button,
  .project-group-action,
  .project-engagement-button,
  .project-card .project-report-button,
  .project-card .project-card-bom-button,
  .project-card .project-card-footer .project-link,
  .category-chip,
  .category-reset,
  .category-token,
  .category-more,
  .quick-import-copy {
    min-width: 44px;
    min-height: 44px;
  }
}

/* Owner-only page customizer. */
body.iw-page--admin_customizer { overflow: hidden; }
.iw-page--admin_customizer .page-shell { width: 100%; min-height: 100vh; margin: 0; padding: 0; gap: 0; }
.iw-page--admin_customizer .page-header { display: none; }
.iw-page--admin_customizer .page-main { display: block; min-height: 100vh; }
.iw-page--admin_customizer .page-main > .page-block { min-height: 100vh; }
.page-customizer { display: grid; grid-template-columns: minmax(300px, 390px) minmax(0, 1fr); min-height: 100vh; background: #dfe3e7; }
.page-customizer-sidebar { position: relative; z-index: 2; display: flex; flex-direction: column; gap: 16px; height: 100vh; padding: 20px; overflow: auto; border-right: 1px solid var(--glass-line); background: var(--page); box-shadow: 10px 0 34px rgba(32,32,29,0.09); }
.page-customizer-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; }
.page-customizer-title { margin: 2px 0 0; font-family: "Manrope", system-ui, sans-serif; font-size: 1.45rem; line-height: 1.1; }
.page-customizer-head .ghost-button { width: 38px; min-width: 38px; min-height: 38px; padding: 0; font-size: 1.5rem; }
.page-customizer-page-fields { display: grid; grid-template-columns: minmax(0, 1fr) minmax(112px, 0.42fr); gap: 10px; }
.page-customizer-selector-card { display: grid; gap: 7px; padding: 12px; border: 1px solid rgba(var(--action-rgb),0.20); border-radius: 9px; background: rgba(var(--action-rgb),0.06); }
.page-customizer-selector-card > span { color: var(--muted); font-size: 0.72rem; font-weight: 820; }
.page-customizer-selector-card code { min-height: 44px; display: block; padding: 9px 10px; overflow-wrap: anywhere; border-radius: 7px; background: rgba(255,255,255,0.66); color: var(--ink); font: 0.72rem/1.45 ui-monospace, "Cascadia Code", "SFMono-Regular", Consolas, monospace; user-select: all; }
.page-customizer-selector-card .ghost-button { justify-self: start; min-height: 34px; padding: 0 11px; font-size: 0.75rem; }
.page-customizer-css-field { flex: 1 1 auto; align-content: start; }
.page-customizer-css-field textarea { width: 100%; min-height: 300px; flex: 1 1 auto; resize: vertical; padding: 12px 13px; border-radius: 9px; background: #17202b; color: #eaf4ff; caret-color: #fed479; font: 0.78rem/1.55 ui-monospace, "Cascadia Code", "SFMono-Regular", Consolas, monospace; tab-size: 2; }
.page-customizer-status { min-height: 22px; margin: 0; font-size: 0.78rem; }
.page-customizer-status.error { color: #a23c4f; }
.page-customizer-actions { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 9px; }
.page-customizer-preview-panel { min-width: 0; height: 100vh; display: grid; grid-template-rows: auto minmax(0, 1fr); }
.page-customizer-preview-toolbar { min-height: 58px; display: flex; align-items: center; justify-content: center; gap: 14px; padding: 8px 16px; border-bottom: 1px solid rgba(32,32,29,0.12); background: rgba(250,248,243,0.94); box-shadow: 0 5px 20px rgba(32,32,29,0.08); }
.page-customizer-frame-stage { min-width: 0; min-height: 0; display: flex; justify-content: center; align-items: stretch; overflow: auto; padding: 18px; background: #dfe3e7; }
.page-customizer-frame-stage iframe { display: block; width: 100%; height: 100%; min-height: 640px; border: 0; border-radius: 8px; background: var(--page); box-shadow: 0 18px 48px rgba(32,32,29,0.20); transition: width 180ms ease; }
.page-customizer-frame-stage[data-device="tablet"] iframe { width: min(820px, 100%); }
.page-customizer-frame-stage[data-device="mobile"] iframe { width: min(390px, 100%); }

@media (max-width: 860px) {
  body.iw-page--admin_customizer { overflow: auto; }
  .page-customizer { grid-template-columns: 1fr; }
  .page-customizer-sidebar { position: static; height: auto; min-height: 0; overflow: visible; border-right: 0; border-bottom: 1px solid var(--glass-line); }
  .page-customizer-preview-panel { height: 78vh; min-height: 620px; }
}

@media (max-width: 540px) {
  .page-customizer-sidebar { padding: 15px; }
  .page-customizer-page-fields, .page-customizer-actions { grid-template-columns: 1fr; }
  .page-customizer-preview-toolbar { justify-content: space-between; overflow-x: auto; }
  .page-customizer-preview-toolbar .editor-device-switch button span { display: none; }
  .page-customizer-frame-stage { padding: 8px; }
}
.billing-checkout {
    width: min(100%, 980px);
    margin-inline: auto;
}

.billing-checkout__header {
    margin-bottom: 1.25rem;
}

.billing-checkout__offer {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1rem;
    align-items: baseline;
    margin-top: 1rem;
}

.billing-checkout__legal {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem 0.85rem;
    align-items: baseline;
    color: var(--muted);
    font-size: 0.86rem;
}

.billing-checkout__legal span {
    flex-basis: 100%;
}

.billing-checkout__legal a {
    color: inherit;
    text-decoration: underline;
    text-underline-offset: 0.16em;
}

.billing-checkout__frame {
    min-height: 420px;
    padding: 1rem;
    border: 1px solid var(--glass-border);
    border-radius: 8px;
    background: var(--glass);
    box-shadow: var(--glass-shadow);
}

.billing-checkout__loading,
.billing-checkout__error {
    padding: 1rem;
}

.billing-checkout__error {
    color: var(--danger, #a12222);
}

.billing-checkout__back {
    margin-top: 1rem;
}

/* Inventory catalog-match review: one double-width unit replaces two cards. */
.gallery.product-catalog-match-gallery {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.product-catalog-match-gallery .empty-state {
    grid-column: 1 / -1;
}

.catalog-match-unit {
    position: relative;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-width: 0;
    overflow: hidden;
    border: 2px solid #a8bfd1;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.24);
}

.catalog-match-side {
    position: relative;
    display: grid;
    grid-template-rows: auto minmax(3rem, auto);
    align-content: start;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: inherit;
    font: inherit;
    text-align: left;
    text-decoration: none;
}

.catalog-match-inventory {
    border-right: 1px solid rgba(67, 75, 84, 0.1);
}

.catalog-match-candidate {
    cursor: pointer;
}

.catalog-match-catalog { position: relative; min-width: 0; }
.catalog-match-catalog-link { height: 100%; }
button.catalog-match-confirmation {
    width: 100%;
    border: 0;
    border-radius: 0;
    pointer-events: auto;
    font-family: inherit;
}
button.catalog-match-confirmation:focus-visible { outline: 3px solid var(--action); outline-offset: -3px; }
button.catalog-match-confirmation.is-error { background: #9c283b; }

.catalog-match-side:hover,
.catalog-match-side:focus-visible {
    background: rgba(255, 255, 255, 0.48);
    outline: 0;
}

.catalog-match-side:focus-visible {
    box-shadow: inset 0 0 0 2px var(--action);
}

.catalog-match-media {
    display: grid;
    place-items: center;
    aspect-ratio: 1 / 1;
    padding: 36px 24px 12px;
    overflow: hidden;
    background: #fff;
}

.catalog-match-direction {
    position: absolute;
    z-index: 4;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: grid;
    place-items: center;
    width: 48px;
    height: 48px;
    border: 3px solid #fff;
    border-radius: 50%;
    background: #249457;
    color: #fff;
    pointer-events: none;
}
.catalog-match-direction svg {
    width: 28px;
    height: 28px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.4;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.catalog-match-empty {
    display: grid;
    justify-items: center;
    gap: 12px;
    padding: 26px;
    color: var(--muted);
    text-align: center;
    font-size: 0.8rem;
}
.catalog-match-empty svg {
    width: 64px;
    height: 64px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
}

.catalog-match-media picture {
    display: contents;
}

.catalog-match-media img {
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.catalog-match-media > svg {
    width: 100%;
    height: 100%;
    padding: 24%;
    fill: none;
    stroke: var(--muted);
    stroke-width: 2;
}

.catalog-match-side > strong {
    display: -webkit-box;
    min-width: 0;
    margin: 0;
    padding: 13px 15px 15px;
    overflow: hidden;
    color: var(--ink);
    font-family: "Manrope", system-ui, sans-serif;
    font-size: 0.9rem;
    font-weight: 820;
    line-height: 1.25;
    overflow-wrap: anywhere;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    line-clamp: 3;
}

.catalog-match-confirmation {
    position: absolute;
    inset: 0 0 auto;
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    padding: 8px 10px;
    background: #249457;
    color: #fff;
    font-size: 0.82rem;
    font-weight: 850;
    line-height: 1.2;
    text-align: center;
    opacity: 1;
    pointer-events: none;
}

.catalog-match-check {
    display: grid;
    place-items: center;
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
    border-radius: 999px;
    background: #249457;
    color: #fff;
}

.catalog-match-check svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2.6;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.catalog-match-candidate.is-saving {
    cursor: progress;
}

.catalog-match-candidate.is-error .catalog-match-confirmation {
    background: #9c283b;
}

.catalog-match-candidate.is-error .catalog-match-check {
    background: #9c283b;
}

.product-catalog-match-filter-toggle .catalog-match-refresh-glyph {
    transform-origin: 12px 12px;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.gallery-head .product-sort-button.product-catalog-match-filter-toggle.is-ready {
    background: #fff4bd !important;
    color: #926000 !important;
    border-color: #d5a72b !important;
    opacity: 1;
}
.gallery-head .product-catalog-match-filter-toggle[aria-disabled="true"] {
    opacity: .5 !important;
    cursor: default !important;
}
.gallery-head .product-catalog-match-filter-toggle[aria-pressed="true"] {
    box-shadow: inset 0 0 0 2px currentColor;
}
.gallery-head button[data-community-tooltip] { overflow: visible; }
.gallery-head button[data-community-tooltip]:is(:hover, :focus-visible) { z-index: 130; }
.gallery-head .product-sort-button.product-catalog-match-filter-toggle svg.catalog-match-refresh-glyph {
    fill: none !important;
    stroke: currentColor !important;
}
.catalog-match-load-error { color: #9c283b; margin: 0 0 18px; }
.catalog-match-load-error[hidden] { display: none; }

@media (max-width: 980px) {
    .gallery.product-catalog-match-gallery {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media (max-width: 520px) {
    .catalog-match-side > strong {
        padding: 11px 10px 13px;
        font-size: 0.8rem;
    }

    .catalog-match-check {
        width: 48px;
        height: 48px;
    }
}
/* Public product orientation before offers; real links also work without JS. */
.catalog-relation-navigation {
    margin: 1rem 0;
    padding: .85rem 1rem;
    border: 1px solid #d8e5ed;
    border-radius: 8px;
    background: #f4f8fb;
}
.catalog-relation-navigation .catalog-relation-navigation-label { margin: 0 0 .35rem; color: var(--muted); font-size: .875rem; font-weight: 400; line-height: 1.55; }
.catalog-relation-navigation ul { display: grid; gap: .35rem; margin: 0; padding: 0; list-style: none; color: var(--muted); font-size: 1rem; font-weight: 400; line-height: 1.55; }
.catalog-relation-navigation li { position: relative; padding-inline-start: 1.25em; overflow-wrap: anywhere; }
.catalog-relation-navigation a { color: var(--action, #1764aa); font: inherit; text-decoration: underline; text-underline-offset: 2px; }
.catalog-relation-arrow { position: absolute; inset-inline-start: 0; text-decoration: none; }
#catalog-v2-alternatives-title, #catalog-v2-accessories-title { scroll-margin-top: 1.5rem; }
@media (prefers-reduced-motion: no-preference) {
    html:has(.catalog-relation-navigation) { scroll-behavior: smooth; }
}

/* Private saved products use a separate bookmark, independent of the order star. */
.product-save-button {
  width: 44px; height: 52px; min-width: 44px; min-height: 52px;
  display: inline-flex; align-items: center; justify-content: center;
  padding: 0; border: 0; border-radius: 4px;
  background: transparent; box-shadow: none; color: #8b6500;
  cursor: pointer; pointer-events: auto; text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}
.product-save-button .product-save-icon {
  position: relative; inset: auto; z-index: 1; display: block;
  width: 36px; height: 52px; flex: 0 0 36px;
  transform: none; pointer-events: none;
  background: url("../icons/bookmark-loop-pale.svg") center / contain no-repeat;
  opacity: .35;
  transition: opacity 140ms ease;
}
.product-save-button[aria-pressed="true"] .product-save-icon,
.product-save-button:not(:disabled):not([aria-disabled="true"]):focus-visible .product-save-icon {
  background-image: url("../icons/bookmark-loop-gold.svg");
  opacity: 1;
}
@media (hover: hover) and (pointer: fine) {
  .product-save-button:not(:disabled):not([aria-disabled="true"]):hover .product-save-icon {
    background-image: url("../icons/bookmark-loop-gold.svg");
    opacity: 1;
  }
}
.product-save-button.is-auth-disabled .product-save-icon {
  opacity: .7;
}
@media (prefers-reduced-motion: reduce) {
  .product-save-button .product-save-icon { transition: none; }
}
[data-filter-products="saved"][aria-pressed="true"] svg { fill: currentColor; }
.product-save-button:focus-visible { outline: 2px solid #9c7300; outline-offset: 2px; }
.product-save-button:disabled { opacity: .55; cursor: wait; }
.product-card .product-card-metrics .product-save-button { position: absolute; top: 3px; right: -8px; z-index: 9; }
.product-detail-action-row:has(> .product-save-button) { position: relative; padding-top: 14px; }
.product-detail-action-row .product-save-button {
  order: 99; align-self: flex-start; margin-top: -14px; margin-left: auto; margin-right: -8px;
}
.catalog-mini-card .product-save-button { position: absolute; top: 3px; right: -8px; z-index: 9; }
/* The image edge sits behind the curled top of the bookmark. */
.catalog-mini-card .product-save-button::before {
  content: ""; position: absolute;
  top: 14px; right: 8px; width: 68px; height: 56px;
  border-top: 1px solid rgba(72, 83, 97, .28);
  border-right: 1px solid rgba(72, 83, 97, .28);
  pointer-events: none;
}
/* Image grids share one flush edge and a borderless score strip under the clip. */
:is(.gallery, .product-project-grid):not(.product-view-list):not(.product-view-list-image) .product-card .product-card-metrics {
  overflow: clip;
  overflow-clip-margin: 16px;
}
:is(.gallery, .product-project-grid):not(.product-view-list):not(.product-view-list-image) .product-card .product-card-metrics:has(> .product-save-button)::before {
  content: ""; position: absolute; z-index: 2;
  top: 0; left: 0; width: 100%; height: 56px;
  border-top: 1px solid rgba(72, 83, 97, .28);
  border-right: 1px solid rgba(72, 83, 97, .28);
  pointer-events: none;
}
:is(.gallery, .product-project-grid):not(.product-view-list):not(.product-view-list-image) .product-card .product-community-meta {
  position: absolute; z-index: 1; top: 0; left: 0;
  width: 100%; max-width: 100%; min-height: 26px;
  margin: 0; padding: 4px 50px 4px 8px;
  border: 0; border-radius: 0; box-shadow: none;
  background: rgba(255, 255, 255, .72);
}
:is(.gallery, .product-project-grid):not(.product-view-list):not(.product-view-list-image) .product-card .product-save-button {
  top: -14px;
}
.product-detail-action-row:has(> .product-save-button)::before {
  content: ""; position: absolute; z-index: 0;
  top: 14px; right: 0; width: min(100%, 140px); height: calc(100% - 14px);
  border-top: 1px solid rgba(72, 83, 97, .28);
  border-right: 1px solid rgba(72, 83, 97, .28);
  pointer-events: none;
}
.product-save-button:disabled,
.product-compatibility-text-action:disabled,
.product-action-bar .is-auth-disabled,
.product-card .product-card-metrics .is-auth-disabled:disabled,
.product-sort-button.is-auth-disabled {
  opacity: .5;
  cursor: not-allowed;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

/* Mobile detail actions share the check row; the score and clip sit below. */
@media (max-width: 760px) {
  .product-detail-action-row.product-action-bar {
    position: relative;
    inset: auto;
    display: grid;
    grid-template-columns: minmax(0, 1fr) repeat(3, 44px);
    grid-template-areas: "compat bookmark inventory like" "meta meta meta meta";
    grid-template-rows: 44px auto;
    align-items: center;
    justify-content: start;
    gap: 18px 6px;
    flex: 1 0 100%;
    width: 100%;
    margin: 0;
    padding: 0 0 14px;
  }
  .product-detail-action-row.product-action-bar .product-compatibility-text-action {
    min-height: 44px;
    padding: 0;
    font-size: .8rem;
  }
  .product-detail-action-row.product-action-bar .product-community-meta {
    justify-self: stretch;
    width: 100%;
    min-height: 28px;
    margin: 0;
    padding: 4px 48px 4px 0;
    border: 0;
    border-radius: 0;
    background: rgba(255, 255, 255, .72);
    box-shadow: none;
    font-size: .72rem;
    line-height: 1.5;
  }
  .product-detail-action-row.product-action-bar :is(.product-community-bookmark-button, .product-add-inventory-button, .product-add-inventory-status, .product-community-like-button) {
    position: relative;
    inset: auto;
    transform: none;
    width: 44px;
    height: 44px;
    min-height: 44px;
    margin: 0;
  }
  .product-detail-action-row .product-rating-summary {
    display: none;
  }
  .product-detail-action-row.product-action-bar .product-save-button {
    position: absolute;
    top: 48px;
    right: -8px;
    z-index: 2;
    margin: 0;
  }
  .product-detail-action-row.product-action-bar:has(> .product-save-button)::before {
    top: 62px;
    width: 100%;
    height: calc(100% - 62px);
  }
}
@media (max-width: 359px) {
  .product-detail-action-row .compatibility-toggle-state { display: none; }
}
