:root {
      --color-primary: #0066ae;
      --color-accent: #ff8c0e;
      --color-dark: #000000b3;
      --color-surface: #ffffff;
      --color-muted: #6b7280;
      --color-border: #e5e7eb;
      --color-bg: #f7f7f8;
      --radius-sm: 8px;
      --radius-md: 12px;
      --radius-lg: 18px;
      --shadow-md: 0 10px 30px rgba(0, 0, 0, 0.08);
      --space-0: 3px;
      --space-1: 8px;
      --space-2: 12px;
      --space-3: 16px;
      --space-4: 20px;
      --space-5: 24px;
      --space-6: 32px;
      --space-7: 40px;
      --space-8: 48px;
      --trust-bar-height: 36px;
      --site-header-height: 96px;
      --sticky-offset-desktop: calc(var(--trust-bar-height) + var(--site-header-height) + var(--space-2));
      color-scheme: light;
    }

    * { box-sizing: border-box; }

    body {
      margin: 0;
      font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
      color: #111827;
      background: var(--color-bg);
      line-height: 1.6;
    }

    a { color: var(--color-primary); text-decoration: none; }
    a:hover { text-decoration: underline; }

    .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
    }

    [hidden] { display: none !important; }

    .container {
      max-width: 1280px;
      margin: 0 auto;
      padding: 0 var(--space-4);
    }

    @media (max-width: 640px) {
      .container { padding: 0 var(--space-4); }
    }

    .trust-marquee {
        position: sticky;
        top: 0;
        z-index: 25;
        background: linear-gradient(90deg, #ec8b29 0%, #eba627 8%, #f0c819 80%);
        color: #333333;
        font-weight: 600;
        font-size: 16px;
        min-height: var(--trust-bar-height);
        display: flex;
        align-items: center;
      }

    .trust-marquee .container {
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        overflow: hidden;
      }

      .trust-marquee-track {
        display: flex;
        gap: var(--space-2);
        align-items: center;
        justify-content: center;
        flex-wrap: nowrap;
        width: 100%;
        max-width: 100%;
        transition: opacity 180ms ease-in-out;
      }
      
      .trust-marquee-track.is-fading { opacity: 0; }

      .trust-marquee-item {
        flex: 0 1 auto;
        min-width: 180px;
        display: inline-flex;
        justify-content: center;
        align-items: center;
        gap: var(--space-2);
        white-space: nowrap;
        padding: 3px 10px;
        opacity: 0.95;
        border-radius: var(--radius-sm);
        background: rgba(255, 255, 255, 0.06);
      }

      .trust-marquee-item img {
        width: 18px;
        height: 18px;
        /*filter: invert(1);*/
        flex-shrink: 0;
      }

      .trust-marquee-item span { display: inline-flex; align-items: center; text-align: center; }

      .site-header {
        position: sticky;
        top: var(--trust-bar-height);
        z-index: 20;
        background: var(--color-surface);
        box-shadow: 0 1px 0 var(--color-border);
      }

      .top-bar {
        display: grid;
        grid-template-columns: repeat(12, minmax(0, 1fr));
        align-items: center;
        gap: var(--space-3);
        padding: var(--space-0) 0;
        position: relative;
      }

    .brand {
      display: inline-flex;
      align-items: center;
      grid-column: span 3;
      min-width: 0;
    }

    .brand-logo {
      width: 150px;
      height: auto;
      object-fit: contain;
    }

    .search {
        grid-column: span 5;
        display: flex;
        align-items: center;
        gap: var(--space-2);
        transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
        position: relative;
      }

    .search input {
        width: 100%;
        padding: 11px 12px;
        border-radius: var(--radius-md);
        border: 1px solid var(--color-border);
        font-size: 0.95rem;
      }

    .search .search-submit {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 10px 12px;
        border: 1px solid var(--color-border);
        background: #fff;
        border-radius: var(--radius-md);
        cursor: pointer;
      }

    .search .search-submit img { width: 18px; height: 18px; }

    .search-suggestions {
      position: absolute;
      top: calc(100% + 6px);
      left: 0;
      right: 0;
      background: #fff;
      border: 1px solid var(--color-border);
      border-radius: var(--radius-md);
      box-shadow: var(--shadow-md);
      z-index: 30;
      overflow: hidden;
      max-height: 320px;
      overflow-y: auto;
    }

    .search-suggestions ul {
      list-style: none;
      margin: 0;
      padding: 0;
    }

    .search-suggestions li + li {
      border-top: 1px solid var(--color-border);
    }

    .search-suggestions a {
      display: block;
      padding: 10px 12px;
      color: var(--color-dark);
      text-decoration: none;
      font-weight: 600;
    }

    .search-suggestions a:hover,
    .search-suggestions a:focus {
      background: #f3f4f6;
    }

    .search-close {
      display: none;
      align-items: center;
      gap: 6px;
      padding: 10px 12px;
      border: 1px solid var(--color-border);
      background: #fff;
      border-radius: var(--radius-md);
      cursor: pointer;
      font-weight: 600;
    }

    .search.is-open ~ .quick-actions .search-toggle { display: none; }

    .quick-actions {
        grid-column: span 3;
        display: inline-flex;
        justify-content: flex-end;
        align-items: center;
        gap: var(--space-2);
        font-weight: 600;
      }

      .icon-button,
      .quick-actions a {
        color: var(--color-dark);
        display: inline-flex;
        align-items: center;
        gap: 6px;
        padding: 8px 10px;
        border-radius: var(--radius-md);
        border: 1px solid transparent;
        background: transparent;
        cursor: pointer;
      }

      .icon-button:hover,
      .quick-actions a:hover { background: #f3f4f6; text-decoration: none; }

      .icon-button img,
      .quick-actions a img { width: 20px; height: 20px; }

      .action-label { display: inline-flex; }

      .cart-button {
        position: relative;
      }

      .cart-count {
        position: absolute;
        top: -6px;
        right: -8px;
        min-width: 20px;
        height: 20px;
        padding: 0 6px;
        border-radius: 999px;
        background: var(--color-primary);
        color: #fff;
        font-size: 0.7rem;
        font-weight: 700;
        line-height: 1;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.18);
        transform-origin: center;
      }

      .cart-count.is-animating {
        animation: cart-count-pop 480ms ease-out;
      }

      @keyframes cart-count-pop {
        0% { transform: scale(1); }
        25% { transform: scale(1.3); }
        35% { transform: scale(1.3) translate(-1px, 0); }
        45% { transform: scale(1.3) translate(1px, -1px); }
        55% { transform: scale(1.3) translate(-1px, 1px); }
        70% { transform: scale(1.1); }
        100% { transform: scale(1); }
      }

      @media (prefers-reduced-motion: reduce) {
        .cart-count.is-animating {
          animation: none;
        }
      }

      .search-toggle { display: none; }

      .menu-toggle {
        display: none;
        grid-column: span 1;
        justify-self: end;
        background: var(--color-primary);
      color: #fff;
      border: none;
      padding: 10px 12px;
      border-radius: var(--radius-md);
        font-weight: 600;
        cursor: pointer;
        align-items: center;
        gap: 8px;
      }

      .menu-toggle img { width: 20px; height: 20px; filter: brightness(0) invert(1); }

    .category-nav {
      border-top: 1px solid var(--color-border);
      border-bottom: 1px solid var(--color-border);
      background: var(--color-dark);
      position: relative;
      overflow: visible;
    }

    .category-nav .container {
      padding-top: var(--space-0);
      padding-bottom: var(--space-0);
    }

    .category-list {
      margin: 0;
      padding: var(--space-0);
      list-style: none;
      display: flex;
      gap: var(--space-3);
      overflow-x: auto;
      scrollbar-width: thin;
      align-items: stretch;
    }

    .category-item { position: relative; }

    .category-row {
      display: inline-flex;
      align-items: center;
      gap: var(--space-1);
    }

    .category-link {
      color: #fff;
      font-weight: 600;
      padding: 3px 12px;
      border-radius: var(--radius-sm);
      display: inline-flex;
      align-items: center;
      line-height: 1.2;
      white-space: nowrap;
    }

    .category-item.has-children > .category-row .category-link::after {
      content: '\25be';
      font-size: 0.8rem;
      margin-left: 6px;
      opacity: 0.9;
    }

    .subcategory-list {
      --submenu-shift: 0px;
      display: none;
      position: absolute;
      left: 50%;
      top: calc(100% + var(--space-1));
      transform: translateX(-50%) translateX(var(--submenu-shift));
      min-width: 220px;
      max-width: calc(100vw - 2 * var(--space-4));
      background: #fff;
      color: var(--color-dark);
      border-radius: var(--radius-md);
      border: 1px solid var(--color-border);
      box-shadow: var(--shadow-md);
      padding: var(--space-2) 0;
      list-style: none;
      margin: 0;
      z-index: 15;
      gap: 4px;
    }

    .subcategory-item { list-style: none; }

    .subcategory-row {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: var(--space-1);
      width: 100%;
    }

    .subcategory-link {
      color: var(--color-dark);
      display: block;
      padding: 8px var(--space-3);
      font-weight: 600;
      flex: 1 1 auto;
    }

    .subcategory-link:hover { background: #f3f4f6; text-decoration: none; }

    .subcategory-list.nested {
      position: static;
      top: auto;
      left: auto;
      min-width: auto;
      margin-top: var(--space-1);
      background: #f8fafc;
      box-shadow: none;
      padding: var(--space-1) var(--space-2) var(--space-1) var(--space-3);
      border: 1px solid var(--color-border);
      border-radius: var(--radius-sm);
    }

    @media (min-width: 769px) {
      .category-nav .container { overflow: visible; }
      .category-list { overflow: visible; }
      .subcategory-list {
        width: min(960px, calc(100vw - 2 * var(--space-4)));
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        padding: var(--space-3);
        gap: var(--space-2);
      }
      .subcategory-item { padding-inline: var(--space-1); }
      .subcategory-list.nested {
        grid-column: 1 / -1;
        margin-top: var(--space-2);
        padding: var(--space-2);
      }
      .category-item:hover > .subcategory-list,
      .category-item:focus-within > .subcategory-list,
      .subcategory-item:hover > .subcategory-list,
      .subcategory-item:focus-within > .subcategory-list {
        display: grid;
      }
    }

    .submenu-toggle {
      display: none;
      align-items: center;
      justify-content: center;
      gap: 6px;
      border: 1px solid rgba(255, 255, 255, 0.4);
      background: rgba(0, 0, 0, 0.08);
      color: #fff;
      padding: 6px;
      border-radius: var(--radius-sm);
      cursor: pointer;
    }

    .category-nav a:focus-visible,
    .menu-toggle:focus-visible,
    .search input:focus-visible,
    .quick-actions a:focus-visible,
    .btn:focus-visible {
      outline: 3px solid var(--color-accent);
      outline-offset: 2px;
    }

    .btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      padding: 11px 16px;
      border-radius: 10px;
      font-weight: 700;
      cursor: pointer;
      border: 1px solid transparent;
      text-decoration: none;
      font-size: 14px;
    }

    .btn-primary {
      background: linear-gradient(135deg, #0066ae, #0b8bd9);
      color: #fff;
      border-color: #0b8bd9;
      box-shadow: 0 10px 25px rgba(0, 102, 174, 0.18);
    }

    .btn-primary:hover { opacity: 0.95; }

    .btn-secondary {
      background: #fff;
      color: #0f172a;
      border-color: #d1d5db;
      line-height: 1;
    }

    .btn-secondary:hover { border-color: #0f172a; }

    .trust-strip { display: none; }

    /*main {
      padding: var(--space-0) 0 var(--space-3);
    }*/

    .page-body {
      display: flex;
      flex-direction: column;
      /*gap: var(--space-7);*/
    }

    .footer {
      background: #333;
      color: #f8fafc;
      padding: var(--space-7) 0 var(--space-6);
      /*margin-top: var(--space-8);*/
      border-top: 4px solid var(--color-primary);
    }

    .footer-grid {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
      gap: var(--space-4);
    }

    .footer h3 {
      margin-top: 0;
      color: #fff;
    }

    .footer a { color: #eee; }
    .footer a:hover { color: #fff; }


    .footer-link-list {
      list-style: none;
      padding: 0;
      margin: 0;
      display: flex;
      flex-direction: column;
      gap: 6px;
    }
    @media (max-width: 1024px) {
        .brand { grid-column: span 3; }
        .search { grid-column: span 5; }
        .quick-actions { grid-column: span 3; gap: var(--space-2); }
        .menu-toggle { grid-column: span 1; }
      }

      @media (max-width: 768px) {
        body { padding-left: 0; padding-right: 0; }
        .site-header,
        .trust-marquee,
        .footer { margin-left: 0; margin-right: 0; }
        .top-bar {
          grid-template-columns: repeat(12, minmax(0, 1fr));
          align-items: center;
          gap: var(--space-2);
          padding-left: var(--space-3);
          padding-right: var(--space-3);
        }
        .brand { grid-column: span 6; }
        .search {
          grid-column: 1 / -1;
          order: 3;
          background: #fff;
          padding: var(--space-2);
          border: 1px solid var(--color-border);
          border-radius: var(--radius-md);
          box-shadow: var(--shadow-md);
          position: absolute;
          left: var(--space-4);
          right: var(--space-4);
          top: calc(100% - var(--space-2));
          visibility: hidden;
          opacity: 0;
          transform: translateY(-6px);
          z-index: 15;
        }
        .search.is-open {
          visibility: visible;
          opacity: 1;
          transform: translateY(0);
        }
        .search .search-submit { display: none; }
        .search-close { display: none; }
        .search.is-open .search-close { display: inline-flex; }
        .search.is-open ~ .quick-actions .search-toggle { display: none !important; }
        .quick-actions {
          grid-column: span 4;
          order: 2;
          justify-content: flex-end;
          gap: var(--space-2);
        }
        .search-toggle { display: inline-flex; }
        .icon-button,
        .quick-actions a { padding: 10px; border: 1px solid var(--color-border); background: #fff; }
        .icon-button:hover,
        .quick-actions a:hover { background: #f3f4f6; }
        .action-label { display: none; }
        .menu-toggle { display: inline-flex; grid-column: span 2; order: 2; justify-self: end; padding: 10px; }
        .category-nav {
          display: none;
          position: absolute;
          left: 0;
          right: 0;
          top: 100%;
          background: #fff;
          color: var(--color-dark);
          box-shadow: var(--shadow-md);
          border-top: none;
          border-bottom: 1px solid var(--color-border);
          z-index: 18;
        }
        .category-nav .container { padding: var(--space-3) var(--space-4); }
        .category-nav.is-open { display: block; }
        .category-nav.is-open .category-link { color: var(--color-dark); }
        .category-nav.is-open .category-item.has-children > .category-row .category-link::after { content: ''; }
        .category-list {
          flex-direction: column;
          align-items: stretch;
          gap: var(--space-1);
          overflow-x: visible;
          max-height: 70vh;
          overflow-y: auto;
        }
        .category-row { justify-content: space-between; width: 100%; }
        .category-link { width: 100%; justify-content: space-between; }
        .submenu-toggle {
          display: inline-flex;
          border: 1px solid var(--color-border);
          background: #fff;
          color: var(--color-dark);
        }
        .subcategory-list {
          position: relative;
          top: 0;
          left: 0;
          min-width: auto;
          margin-top: var(--space-1);
          box-shadow: none;
          background: #f8fafc;
          padding: var(--space-2);
          border: 1px solid var(--color-border);
          display: none;
          transform: none;
          --submenu-shift: 0px;
        }
        .category-item.is-open > .subcategory-list,
        .subcategory-item.is-open > .subcategory-list { display: grid; gap: var(--space-1); }
        .trust-marquee { --trust-item-width: 100vw; }
      }

      @media (max-width: 640px) {
        .trust-marquee { --trust-item-width: 100vw; }
        .trust-marquee { font-size: 16px; }
        .brand { grid-column: span 7; }
        .quick-actions { grid-column: span 3; }
        .menu-toggle { grid-column: span 2; }
        .brand-logo { width: 100px; height: auto;}
      }

      .account-overlay {
        position: fixed;
        inset: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        background: rgba(15, 23, 42, 0.35);
         padding: 32px 16px;
        z-index: 60;
      }

      .account-overlay-card {
        width: min(520px, 100%);
        max-height: calc(100vh - 128px);
        overflow-y: auto;
        background: #fff;
        border-radius: 16px;
        padding: 20px;
        box-shadow: var(--shadow-md);
        border: 1px solid var(--color-border);
      }

      .account-overlay-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        margin-bottom: 12px;
      }

      .account-overlay-form {
        display: grid;
        gap: 12px;
      }

      .account-overlay-panel {
        display: grid;
        gap: 12px;
      }

      .account-overlay-form .field-group {
        display: grid;
        gap: 6px;
      }

      .account-overlay-form .field-error {
        color: #b91c1c;
        font-size: 12px;
        min-height: 16px;
        margin: 0;
      }

      .account-overlay-form .form-message {
        padding: 10px 12px;
        border-radius: 10px;
        border: 1px solid transparent;
        font-size: 13px;
      }

      .account-overlay-form .form-message.success {
        background: #ecfdf3;
        color: #065f46;
        border-color: #bbf7d0;
      }

      .account-overlay-form .form-message.error {
        background: #fef2f2;
        color: #991b1b;
        border-color: #fecaca;
      }

      .account-overlay-form label {
        font-weight: 600;
        font-size: 14px;
      }

      .account-overlay-form input,
      .account-overlay-form select {
        padding: 10px 12px;
        border-radius: 10px;
        border: 1px solid #d1d5db;
        font-size: 14px;
      }

      .account-overlay-form .radio-group {
        display: flex;
        gap: 16px;
        flex-wrap: wrap;
      }

      .account-overlay-form .radio-option {
        display: inline-flex;
        gap: 8px;
        align-items: center;
        font-weight: 600;
      }

      .account-overlay-form .full-row {
        grid-column: 1 / -1;
      }

      .account-overlay-form .business-grid {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
        gap: 12px;
        grid-column: 1 / -1;
      }

      .account-overlay-actions {
        display: grid;
        gap: 10px;
        margin-top: 6px;
      }

      .account-overlay-actions .btn {
        width: 100%;
        justify-content: center;
      }

      .account-overlay-actions .btn-icon {
        width: 18px;
        height: 18px;
      }

      .account-overlay-switch {
        text-align: center;
        font-size: 14px;
        color: var(--color-muted);
      }

      .account-overlay-switch button {
        background: none;
        border: none;
        color: var(--color-primary);
        font-weight: 600;
        cursor: pointer;
        padding: 0;
      }

      .account-overlay-footer {
        margin-top: 12px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        font-size: 14px;
      }

      .account-overlay-close {
        background: transparent;
        border: none;
        font-size: 20px;
        cursor: pointer;
        color: var(--color-muted);
      }

      @media (max-width: 640px) {
        .account-order-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        .account-item-summary, .account-item-pricing { grid-template-columns: 1fr; }
        .account-overlay {
          padding: 20px 12px;
          align-items: flex-start;
        }

        .account-overlay-card {
          width: 100%;
          max-height: calc(100vh - 40px);
        }
      }

      .account-shell { display: grid; gap: 16px; }
      .account-title { display: flex; justify-content: flex-start; margin: 0; }
      .account-section { display: grid; gap: 12px; }
      .account-accordion {
        border: 1px solid #dbe4ef;
        border-radius: 16px;
        background: #ffffff;
        box-shadow: 0 10px 24px rgba(15, 23, 42, 0.06);
        overflow: hidden;
      }
      .account-accordion-summary {
        list-style: none;
        cursor: pointer;
        padding: 18px 20px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        font-weight: 700;
      }
      .account-accordion-summary::-webkit-details-marker { display: none; }
      .account-accordion-summary::after {
        content: '⌄';
        color: var(--color-muted);
        font-size: 18px;
        transition: transform 0.2s ease;
      }
      .account-accordion[open] .account-accordion-summary::after { transform: rotate(180deg); }
      .account-section-heading { display: inline-flex; align-items: center; gap: 10px; }
      .account-section-icon {
        width: 28px;
        height: 28px;
        border-radius: 8px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: #eff6ff;
      }
      .account-panel {
        background: #fff;
        border-top: 1px solid #edf2f7;
        padding: 20px;
      }
      .account-data-grid {
        display: grid;
        gap: 16px;
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
        margin: 0 0 12px;
      }
      .account-data-grid dt { font-size: 12px; text-transform: uppercase; letter-spacing: 0.06em; color: var(--color-muted); margin-bottom: 4px; }
      .account-data-grid dd { margin: 0; font-weight: 600; }
      .account-panel-actions { margin-top: 12px; display: flex; flex-wrap: wrap; gap: 10px; }
      .address-book-grid {
        display: grid;
        gap: 16px;
        grid-template-columns: 1fr;
        margin-bottom: 12px;
      }
      .address-card {
        border: 1px solid var(--color-border);
        border-radius: 14px;
        padding: 14px;
        background: #f9fafb;
        display: grid;
        gap: 8px;
      }
      .address-card.is-default { border-color: #0b8bd9; background: #eff6ff; }
      .address-card-header { display: flex; justify-content: space-between; align-items: center; gap: 8px; }
      .address-company { font-weight: 600; color: var(--color-muted); }
      .address-card address { font-style: normal; color: #0f172a; }
      .badge {
        display: inline-flex;
        align-items: center;
        padding: 2px 8px;
        border-radius: 999px;
        font-size: 12px;
        font-weight: 600;
        background: #0b8bd9;
        color: #fff;
      }
      .address-card-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
      .address-card-actions form { margin: 0; }
      .account-orders-table-wrap { overflow-x: auto; }
      .account-orders-table {
        width: 100%;
        border-collapse: collapse;
        min-width: 640px;
      }
      .account-orders-table th,
      .account-orders-table td {
        padding: 10px;
        border-bottom: 1px solid #e5e7eb;
        text-align: left;
      }
      .account-orders-table th { font-size: 12px; text-transform: uppercase; color: var(--color-muted); letter-spacing: 0.04em; }
      .account-consent-form { display: grid; gap: 12px; }
      .account-consent-row {
        display: flex;
        gap: 10px;
        align-items: center;
        justify-content: space-between;
        padding: 12px;
        border: 1px solid #e5e7eb;
        border-radius: 12px;
        background: #f8fafc;
      }
      .consent-switch { position: relative; width: 52px; height: 30px; display: inline-flex; }
      .consent-switch input { opacity: 0; width: 0; height: 0; }
      .consent-switch-slider {
        position: absolute; inset: 0; border-radius: 999px; background: #dc2626; transition: background-color .2s ease;
      }
      .consent-switch-slider::before {
        content: ''; position: absolute; width: 22px; height: 22px; left: 4px; top: 4px; border-radius: 50%; background: #fff; transition: transform .2s ease;
      }
      .consent-switch input:checked + .consent-switch-slider { background: #16a34a; }
      .consent-switch input:checked + .consent-switch-slider::before { transform: translateX(22px); }
      .account-orders-list { display: grid; gap: 12px; }
      .account-order-item { border: 1px solid #e5e7eb; border-radius: 12px; background: #f8fafc; }
      .account-order-summary { list-style: none; display:grid; grid-template-columns: 100px repeat(4,minmax(0,1fr)) 220px; gap: 10px; align-items:center; padding: 12px; cursor:pointer; }
      .account-order-summary::-webkit-details-marker { display: none; }
      .account-order-details { padding: 12px; border-top: 1px solid #e5e7eb; display: grid; gap: 12px; }
      .account-order-meta-grid { display: grid; gap: 10px; grid-template-columns: repeat(auto-fit, minmax(210px, 1fr)); }
      .account-order-meta-block { border: 1px solid #e5e7eb; border-radius: 10px; padding: 10px; background: #fff; display: grid; gap: 6px; }
      .account-order-meta-block h4 { margin: 0; font-size: 0.95rem; }
      .account-order-meta-block p { margin: 0; }
      .account-order-meta-block address { font-style: normal; line-height: 1.45; margin: 0; }
      .account-order-meta-block address span { display: block; margin: 0; }
      .account-delivery-window { margin-top: 6px; font-weight: 600; color: #334155; }
      .account-order-totals { margin: 0; display: grid; gap: 4px; }
      .account-order-totals div { display: flex; justify-content: space-between; gap: 8px; }
      .account-order-totals dt, .account-order-totals dd { margin: 0; }
      .account-order-product { border: 1px solid #e5e7eb; border-radius: 10px; padding: 10px; display: grid; gap: 10px; background: #fff; }
      .account-item-summary, .account-item-pricing { margin: 0; display: grid; gap: 6px; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); }
      .account-item-summary div, .account-item-pricing div { border: 1px solid #e2e8f0; border-radius: 8px; padding: 8px; background: #f8fafc; }
      .account-item-summary dt, .account-item-pricing dt { margin: 0; font-size: 0.78rem; color: #64748b; text-transform: uppercase; letter-spacing: 0.03em; }
      .account-item-summary dd, .account-item-pricing dd { margin: 2px 0 0; font-weight: 600; word-break: break-word; }
      .account-order-measures { margin: 0; display: grid; gap: 4px; }
      .account-order-measures dt, .account-order-measures dd { margin: 0; }
      .account-config-summary { margin: 0; display: grid; gap: 6px; }
      .account-config-row { display: grid; gap: 4px; }
      .account-config-row--mastergroup { border-top: 1px dashed #cbd5e1; padding-top: 8px; margin-top: 2px; }
      .account-config-summary dt { font-weight: 700; }
      .account-config-summary dd { margin: 0; }
      .account-config-icons { display: grid; gap: 6px; }
      .account-config-option { display: inline-flex; align-items: center; gap: 6px; margin-right: 8px; }
      .account-config-option-icon { width: 24px; height: 24px; object-fit: contain; border-radius: 6px; border: 1px solid #e5e7eb; background: #fff; }
      .account-inline-form { display: inline; }
      .account-invoice-icon { border: 1px solid #d1d5db; border-radius: 8px; background: #fff; padding: 2px 8px; text-decoration:none; margin-left: 6px; }
      .account-invoice-meta { font-size: 12px; color: var(--color-muted); }

      .account-shell .btn-primary {
        background: var(--color-primary);
        color: #fff;
        border-color: var(--color-primary);
        box-shadow: none;
      }

      .account-shell .btn-secondary {
        background: #fff;
        color: var(--color-primary);
        border-color: var(--color-primary);
      }

      .account-shell .btn-secondary:hover {
        background: rgba(0, 102, 174, 0.08);
      }

      .checkout-consent-item--checkbox {
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        gap: 10px;
        width: 100%;
        justify-self: start;
        align-self: start;
        margin: 0;
        text-align: left;
      }

      .checkout-consent-item--checkbox input {
        margin-top: 3px;
        flex-shrink: 0;
      }

      .checkout-consent-item--checkbox span {
        font-weight: 600;
        line-height: 1.4;
        flex: 1;
      }

      @media (max-width: 640px) {
        .account-order-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
        .account-item-summary, .account-item-pricing { grid-template-columns: 1fr; }
        .account-overlay {
          justify-content: center;
          padding-top: 80px;
        }
        .account-hero { padding: 20px; }
        .account-meta { width: 100%; }
      }