@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;650;700;750;800&display=swap');
:root {
    font-family:Manrope,Arial,sans-serif;
    color-scheme:light;
    --bg:#f1f5fa;
    --surface:#fff;
    --surface-alt:#f7f9fc;
    --text:#172238;
    --muted:#7b879b;
    --line:#e2e8f2;
    --blue:#2870ed;
    --blue-dark:#1758d4;
    --soft:#edf4ff;
    --nav:#101a2e;
    --shadow:0 5px 24px #172c4e05;
    --green:#13b98b
}
:root[data-theme=dark] {
    color-scheme:dark;
    --blue:#76a9ff;
    --blue-dark:#9ac1ff;
    --bg:#0e1625;
    --surface:#172235;
    --surface-alt:#1b2940;
    --text:#e5edf9;
    --muted:#95a6bf;
    --line:#2b3a52;
    --soft:#203657;
    --shadow:0 6px 24px #00000012
}
* {
    box-sizing:border-box
}
body {
    margin:0;
    background:var(--bg);
    color:var(--text);
    min-height:100vh;
    display:flex;
    flex-direction:column;
    font-size:14px;
    line-height:1.65
}
a {
    color:var(--blue);
    text-decoration:none
}
a:hover {
    color:var(--blue-dark)
}
button,input,select,textarea {
    font:inherit
}
button,a,input,select,textarea {
    -webkit-tap-highlight-color:transparent
}
button {
    cursor:pointer
}
button:disabled {
    cursor:not-allowed;
    opacity:.45
}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible {
    outline:3px solid #70b1ff;
    outline-offset:3px
}
h1,h2,h3,p {
    margin-top:0
}
h1 {
    font-size:32px;
    letter-spacing:-1.1px;
    line-height:1.25;
    margin-bottom:16px;
    font-weight:800
}
h2 {
    font-size:19px;
    letter-spacing:-.45px;
    line-height:1.4;
    margin-bottom:12px
}
h3 {
    font-size:16px;
    line-height:1.4
}
p {
    margin-bottom:16px
}
small,.small {
    font-size:12px
}
.muted {
    color:var(--muted)
}
.text-blue {
    color:var(--blue)
}
.icon {
    width:20px;
    height:20px;
    flex-shrink:0;
    vertical-align:middle
}
.container {
    width:min(1200px,calc(100% - 64px));
    margin-inline:auto
}
.site-header {
    background:var(--nav);
    color:#eaf1ff;
    box-shadow:0 2px 12px #0b173016
}
.header-top {
    display:flex;
    align-items:center;
    gap:28px;
    min-height:94px
}
.brand {
    display:flex;
    align-items:center;
    flex-shrink:0
}
.brand img {
    width:250px;
    height:auto;
    object-fit:contain
}
.header-caption {
    font-size:12px;
    color:#7f90ac;
    border-left:1px solid #344055;
    padding-left:24px
}
.header-actions {
    display:flex;
    align-items:center;
    gap:12px;
    margin-left:auto
}
.secure-note {
    display:flex;
    align-items:center;
    gap:7px;
    color:#8ea1bb;
    font-size:11px;
    margin-right:8px
}
.secure-note .icon {
    color:#22caa1;
    width:16px
}
.icon-button,.account-button {
    border:1px solid #344056;
    background:#1c293e;
    color:#d8e4f6;
    border-radius:8px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:38px;
    padding:7px 12px
}
.account-button {
    font-size:12px;
    font-weight:750
}
.account-button .icon {
    width:16px
}
.icon-button:hover,.account-button:hover {
    background:#263956;
    color:white
}
.cart-button {
    position:relative
}
.cart-count {
    border-radius:5px;
    background:#2672ed;
    color:white;
    font-size:10px;
    min-width:16px;
    text-align:center;
    font-weight:800
}
.nav-border {
    border-top:1px solid #263247
}
.main-nav {
    display:flex;
    align-items:center;
    gap:13px;
    min-height:61px
}
.main-nav>a,.nav-actions>a {
    display:flex;
    align-items:center;
    gap:8px;
    color:#9eadc3;
    padding:9px 16px;
    border-radius:7px;
    font-size:12px;
    font-weight:750;
    white-space:nowrap
}
.main-nav>a .icon,.nav-actions>a .icon {
    width:16px;
    height:16px
}
.main-nav>a:hover,.nav-actions>a:hover {
    color:white;
    background:#1d2c44
}
.main-nav>a.active,.nav-actions>a.active {
    background:linear-gradient(110deg,#0699d7,#2864ed);
    color:#fff;
    box-shadow:0 4px 10px #026ce32b
}
.nav-actions {
    display:flex;
    align-items:center;
    gap:7px;
    margin-left:auto;
    flex-shrink:0
}
.nav-actions>a {
    flex-shrink:0
}
.nav-actions>a.nav-contact {
    border:1px solid #135479;
    background:#102b40;
    color:#4bc7f5;
    padding-inline:19px
}
.nav-actions>a.nav-contact:hover,.nav-actions>a.nav-contact.active {
    border-color:#168ab6;
    background:#123a55;
    color:#77dcff
}
.status-dot {
    width:6px;
    height:6px;
    display:inline-block;
    border-radius:50%;
    background:var(--green);
    box-shadow:0 0 0 3px #12ba8a12;
    flex-shrink:0
}
.site-main {
    flex:1;
    padding-top:23px;
    padding-bottom:62px
}
.breadcrumb {
    display:flex;
    align-items:center;
    gap:10px;
    font-size:10px;
    color:var(--muted);
    margin-bottom:24px
}
.breadcrumb a {
    color:var(--muted)
}
.breadcrumb span:nth-child(2) {
    color:#b6c0d0
}
.shop-intro {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:5px 3px 25px
}
.eyebrow {
    display:block;
    color:var(--blue);
    font-weight:800;
    font-size:10px;
    letter-spacing:1.7px;
    margin-bottom:10px
}
.shop-intro h1 {
    font-size:34px;
    margin-bottom:10px;
    letter-spacing:-1.3px
}
.shop-intro h1 span {
    color:var(--blue)
}
.shop-intro p {
    color:var(--muted);
    font-size:13px;
    margin:0
}
.intro-symbol {
    display:flex;
    align-items:center;
    gap:10px;
    margin-right:12px;
    color:#b3c5e4
}
.intro-symbol .icon {
    width:38px;
    height:38px;
    stroke-width:1.3
}
.intro-symbol span {
    font-size:10px;
    font-weight:800;
    letter-spacing:2px;
    line-height:1.5
}
.benefit-strip {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    background:var(--surface);
    border:1px solid var(--line);
    border-radius:10px;
    padding:20px 0;
    margin-bottom:30px;
    box-shadow:var(--shadow)
}
.benefit-strip>div {
    display:flex;
    align-items:center;
    gap:12px;
    padding:0 28px;
    border-right:1px solid var(--line)
}
.benefit-strip>div:last-child {
    border:0
}
.benefit-strip .icon {
    color:var(--blue);
    width:25px;
    height:25px
}
.benefit-strip strong {
    display:block;
    font-size:11px;
    font-weight:800
}
.benefit-strip small {
    display:block;
    color:var(--muted);
    font-size:10px;
    margin-top:2px
}
.shop-layout {
    display:grid;
    grid-template-columns:230px minmax(0,1fr);
    gap:26px
}
.panel {
    background:var(--surface);
    border:1px solid var(--line);
    border-radius:12px;
    box-shadow:var(--shadow)
}
.category-panel {
    overflow:hidden
}
.category-panel h2 {
    font-size:13px;
    display:flex;
    align-items:center;
    gap:9px;
    padding:20px 20px 16px;
    margin:0;
    border-bottom:1px solid var(--line)
}
.category-panel h2 .icon {
    color:var(--blue);
    width:16px
}
.category-panel nav {
    padding:9px
}
.category-panel nav a {
    display:flex;
    justify-content:space-between;
    align-items:center;
    color:var(--muted);
    font-size:11px;
    font-weight:650;
    padding:13px 10px;
    border-radius:6px;
    margin:2px 0;
    gap:4px
}
.category-panel nav a.selected {
    color:var(--blue);
    background:var(--soft);
    font-weight:800
}
.category-panel nav a:hover {
    background:var(--surface-alt)
}
.category-panel nav a.category-node {
    padding-left: calc(10px + var(--category-indent, 0px));
}
.category-node > span:first-child {
    min-width: 0;
    overflow-wrap: anywhere;
}
.category-panel nav a.category-ancestor {
    color: var(--text);
    font-weight: 800;
}
.category-branch {
    margin-right: 5px;
    color: var(--muted);
}
.category-panel nav .count {
    flex-shrink: 0;
}
.catalog-toolbar .catalog-title {
    font-size: 20px;
    letter-spacing: -.7px;
    margin: 0 0 1px;
    overflow-wrap: anywhere;
}
.catalog-toolbar > div {
    min-width: 0;
}
.breadcrumb[aria-label="Ścieżka kategorii"] {
    flex-wrap: wrap;
    row-gap: 4px;
}
.breadcrumb[aria-label="Ścieżka kategorii"] > * {
    max-width: 100%;
    overflow-wrap: anywhere;
}
@media (max-width: 800px) {
    .category-panel nav a.category-node {
        padding-left: 12px;
    }
    .catalog-toolbar .catalog-title {
        font-size: 18px;
    }
}
.count {
    background:var(--surface-alt);
    border-radius:4px;
    padding:0 5px;
    font-size:10px;
    color:var(--muted)
}
.selected .count {
    background:var(--surface);
    color:var(--blue)
}
.help-card {
    border:1px solid #cdddf6;
    background:linear-gradient(135deg,var(--soft),var(--surface-alt));
    border-radius:10px;
    padding:22px 20px;
    margin-top:18px
}
.help-icon {
    display:grid;
    place-items:center;
    background:var(--surface);
    border:1px solid var(--line);
    width:36px;
    height:36px;
    border-radius:9px;
    color:var(--blue);
    margin-bottom:15px
}
.help-card h3 {
    font-size:13px;
    margin-bottom:8px
}
.help-card p {
    font-size:11px;
    color:var(--muted);
    margin-bottom:16px
}
.help-card a {
    font-size:11px;
    font-weight:800;
    display:flex;
    align-items:center;
    justify-content:space-between
}
.help-card a .icon {
    width:16px
}
.catalog-toolbar {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-bottom:18px;
    min-height:47px
}
.catalog-toolbar h2 {
    font-size:20px;
    letter-spacing:-.7px;
    margin-bottom:1px
}
.catalog-toolbar .muted {
    font-size:10px
}
.search-form {
    display:flex;
    align-items:center;
    gap:8px;
    border:1px solid var(--line);
    border-radius:7px;
    padding:0 10px;
    background:var(--surface);
    min-height:39px;
    max-width:280px
}
.search-form>.icon {
    width:15px;
    color:var(--muted)
}
.search-form input {
    border:0;
    background:none;
    color:var(--text);
    width:100%;
    min-width:0;
    padding:9px 0;
    font-size:11px;
    outline:none
}
.search-form button {
    background:none;
    border:0;
    color:var(--muted);
    padding:0;
    display:grid;
    place-items:center
}
.search-form button .icon {
    width:16px
}
.product-grid {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:17px
}
.product-card {
    background:var(--surface);
    border:1px solid var(--line);
    border-radius:11px;
    padding:17px;
    box-shadow:var(--shadow);
    transition:transform .15s,border-color .15s;
    min-width:0
}
.product-card:hover {
    transform:translateY(-3px);
    border-color:#9cbef2
}
.product-card-top {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:8px
}
.product-type {
    font-size:8px;
    font-weight:750;
    color:var(--muted);
    padding:3px 6px;
    border:1px solid var(--line);
    border-radius:4px;
    background:var(--surface-alt)
}
.digital-dot {
    width:5px;
    height:5px;
    border-radius:50%;
    background:var(--green)
}
.service-brand {
    display:flex;
    align-items:center;
    gap:10px;
    min-height:100px;
    padding-top:7px;
    color:var(--brand-color)
}
.service-brand strong {
    font-weight:800;
    font-size:20px;
    letter-spacing:-.9px;
    overflow-wrap:anywhere
}
.service-brand-image {
    justify-content:center;
    padding:12px 0;
}
.service-brand-image img {
    display:block;
    width:auto;
    height:auto;
    max-width:min(100%, 230px);
    max-height:76px;
    object-fit:contain;
}
.service-monogram {
    display:grid;
    place-items:center;
    font-size:24px;
    font-weight:800;
    width:40px;
    height:42px;
    flex-shrink:0;
    border-radius:10px;
    color:var(--brand-color);
    background:color-mix(in srgb,var(--brand-color) 10%,transparent);
    border:1px solid color-mix(in srgb,var(--brand-color) 15%,transparent)
}
.product-description {
    font-size:10px;
    color:var(--muted);
    line-height:1.8;
    min-height:38px;
    margin:0 0 15px
}
.product-meta {
    font-size:9px;
    display:flex;
    align-items:center;
    gap:5px;
    color:var(--muted);
    padding-bottom:18px;
    border-bottom:1px dashed var(--line)
}
.product-meta .icon {
    width:13px;
    height:13px
}
.product-card-bottom {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:6px;
    padding-top:17px
}
.product-card-bottom small {
    display:block;
    font-size:9px;
    color:var(--muted);
    margin-bottom:1px
}
.product-card-bottom strong {
    font-size:19px;
    letter-spacing:-.7px
}
.button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    padding:11px 18px;
    background:linear-gradient(115deg,#1688ef,#2862e5);
    color:#fff;
    border:1px solid transparent;
    border-radius:7px;
    font-size:12px;
    font-weight:800;
    line-height:1.5;
    box-shadow:0 3px 7px #2665e31a;
    text-align:center
}
.button:hover {
    background:#1a5edc;
    color:#fff
}
.button .icon {
    width:16px;
    height:16px
}
.button-soft {
    background:var(--soft);
    color:var(--blue);
    box-shadow:none;
    border-color:#8fb6ff26
}
.button-soft:hover {
    background:#d5e5ff;
    color:#215cc6
}
.product-card-bottom .button {
    font-size:9px;
    padding:9px 10px;
    gap:5px
}
.product-card-bottom .button .icon {
    width:12px
}
.catalog-note {
    display:flex;
    align-items:center;
    gap:11px;
    margin-top:22px;
    padding:13px 17px;
    border:1px dashed var(--line);
    border-radius:8px;
    color:var(--muted);
    font-size:10px
}
.catalog-note .icon {
    color:var(--blue);
    width:18px
}
.catalog-note strong {
    color:var(--text);
    font-weight:750
}
.site-footer {
    margin-top:auto;
    background:var(--surface);
    border-top:1px solid var(--line)
}
.footer-top {
    padding-top:29px;
    padding-bottom:27px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px
}
.footer-wordmark {
    font-size:20px;
    letter-spacing:-.8px;
    font-weight:800;
    color:var(--text)
}
.footer-wordmark span {
    color:var(--blue)
}
.footer-wordmark small {
    font-size:13px;
    color:var(--muted)
}
.footer-top p {
    color:var(--muted);
    font-size:10px;
    margin:4px 0 0
}
.footer-top nav {
    display:flex;
    gap:23px
}
.footer-top nav a {
    font-size:10px;
    color:var(--muted)
}
.footer-top a:hover {
    color:var(--blue)
}
.footer-mail {
    display:flex;
    align-items:center;
    gap:8px;
    color:var(--muted);
    font-size:10px
}
.footer-mail .icon {
    width:15px
}
.footer-bottom {
    border-top:1px solid var(--line);
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding-top:16px;
    padding-bottom:16px;
    color:var(--muted);
    font-size:9px
}
.footer-bottom>span:last-child {
    display:flex;
    align-items:center;
    gap:5px
}
.footer-bottom .icon {
    width:12px;
    height:12px
}
.notice {
    padding:13px 17px;
    border:1px solid #a9d9c8;
    background:#ecfbf5;
    color:#147757;
    border-radius:8px;
    margin-bottom:20px;
    font-size:12px
}
.notice.info {
    background:var(--soft);
    border-color:#b4cef6;
    color:var(--blue)
}
.notice.error {
    background:#fff0f1;
    border-color:#ffc6ce;
    color:#ba3349
}
:root[data-theme=dark] .notice {
    background:#12362c;
    color:#80d8b7;
    border-color:#225b48
}
:root[data-theme=dark] .notice.error {
    background:#3f2330;
    color:#f3a4b1;
    border-color:#703147
}
:root[data-theme=dark] .notice.info {
    background:#203657;
    color:#accaf6;
    border-color:#36527c
}
.empty {
    padding:60px 30px;
    text-align:center
}
.empty>.icon {
    width:40px;
    height:40px;
    color:var(--muted);
    margin-bottom:16px
}
.empty h1 {
    font-size:28px
}
.empty p {
    color:var(--muted)
}
.prose {
    padding:38px 42px;
    max-width:1000px;
    margin:18px auto
}
.prose.legal-page {
      max-width:none;
      width:100%;
  }
.prose h2 {
    margin-top:26px
}
.lead {
    font-size:15px;
    color:var(--muted);
    line-height:1.9
}
.plain-content {
    white-space:pre-wrap;
    overflow-wrap:anywhere
}
.product-detail {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    padding:44px
}
.product-detail h1 {
    margin-top:18px
}
.detail-guarantee {
    display:flex;
    gap:13px;
    align-items:center;
    padding-top:30px;
    color:var(--blue);
    font-size:12px
}
.detail-guarantee strong {
    color:var(--muted);
    font-size:11px;
    font-weight:500
}
.variant-panel {
    background:var(--surface-alt);
    border:1px solid var(--line);
    border-radius:10px;
    padding:25px
}
.variant-panel>p {
    font-size:12px
}
.variant-select-label {
    display:block;
    margin:20px 0 7px;
    color:var(--text);
    font-size:12px;
    font-weight:700
}
.variant-select {
    display:block;
    width:100%;
    min-height:46px;
    margin-bottom:16px;
    padding:11px 13px;
    border:1px solid var(--line);
    border-radius:8px;
    background:var(--surface);
    color:var(--text);
    font:inherit;
    font-size:13px
}
.variant-select:focus-visible {
    outline:2px solid var(--blue);
    outline-offset:2px
}
.variant-price-summary {
    margin:13px 0 18px;
    color:var(--muted);
    font-size:12px
}
.variant-price-summary strong {
    color:var(--text);
    font-size:15px
}
.variants {
    display:grid;
    gap:10px;
    margin:22px 0
}
.variant-option {
    display:flex;
    align-items:center;
    gap:12px;
    padding:14px;
    background:var(--surface);
    border:1px solid var(--line);
    border-radius:8px;
    cursor:pointer
}
.variant-option.selected {
    border-color:var(--blue);
    background:var(--soft)
}
.variant-option strong {
    display:block;
    font-size:13px
}
.variant-option small {
    display:block;
    font-size:10px;
    color:var(--muted)
}
.variant-option b {
    margin-left:auto;
    font-size:17px;
    white-space:nowrap
}
.variant-option input {
    width:16px;
    accent-color:var(--blue)
}
.variant-option.unavailable {
    opacity:.5;
    cursor:not-allowed
}
.full-width {
    width:100%
}
.auth-card {
    max-width:460px;
    margin:35px auto;
    padding:35px 40px
}
.legal-turnstile-gate {
    max-width:720px;
    text-align:center
}
.legal-turnstile-gate .form-stack {
    align-items:center
}
.legal-turnstile-gate .cf-turnstile {
    align-self:center
}
.legal-turnstile-gate .button {
    width:min(100%,360px)
}
.auth-card .eyebrow,.auth-card .settings-icon {
    display:none
}
.auth-card h1 {
    font-size:28px;
    margin-bottom:8px
}
.auth-card>p {
    font-size:12px
}
.auth-switch {
    border-top:1px solid var(--line);
    padding-top:20px;
    text-align:center;
    margin:22px 0 0
}
.form-stack {
    display:flex;
    flex-direction:column;
    gap:18px
}
.form-stack label {
    font-weight:750;
    font-size:11px;
    display:flex;
    flex-direction:column;
    gap:6px
}
.form-stack label small {
    font-size:10px;
    color:var(--muted);
    font-weight:400
}
.form-stack input:not([type=checkbox]):not([type=radio]),.form-stack textarea,.form-stack select,.inline-actions select {
    width:100%;
    border:1px solid var(--line);
    border-radius:7px;
    background:var(--surface-alt);
    color:var(--text);
    padding:11px 12px;
    font-size:12px;
    min-width:0
}
.form-stack textarea {
    resize:vertical;
    min-height:110px
}
.form-stack input[type=color] {
    min-height:43px;
    padding:5px
}
.form-stack .checkbox,.checkbox {
    display:flex;
    flex-direction:row;
    align-items:flex-start;
    gap:8px;
    font-weight:500;
    font-size:11px
}
.checkbox input {
    margin-top:4px;
    accent-color:var(--blue);
    width:14px;
    height:14px;
    flex-shrink:0
}
.form-row {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px
}
.form-panel {
    padding:26px
}
.compact-form {
    max-width:400px;
    margin-top:20px
}
.page-heading {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin:20px 0 30px
}
.page-heading h1 {
    margin:0 0 5px
}
.page-heading p {
    margin:0
}
.table-panel {
    overflow:hidden;
    margin-bottom:24px
}
.table-panel>h2 {
    padding:23px 26px 10px
}
.table-scroll {
    overflow-x:auto
}
table {
    border-collapse:collapse;
    width:100%;
    font-size:11px;
    text-align:left
}
th {
    background:var(--surface-alt);
    color:var(--muted);
    font-size:10px;
    font-weight:750;
    white-space:nowrap
}
th,td {
    padding:16px 20px;
    border-bottom:1px solid var(--line)
}
tr:last-child td {
    border-bottom:0
}
td small {
    display:block;
    font-size:9px;
    color:var(--muted);
    margin-top:4px
}
td a {
    white-space:nowrap
}
.status {
    display:inline-block;
    font-size:10px;
    padding:5px 9px;
    border-radius:5px;
    font-weight:750;
    white-space:nowrap
}
.status.pending {
    background:#fff4d9;
    color:#a87a0b
}
.status.paid {
    background:#dcf8ec;
    color:#13916a
}
.status.cancelled {
    background:var(--surface-alt);
    color:var(--muted)
}
.account-settings {
    padding:22px 26px
}
.account-settings summary {
    cursor:pointer;
    font-weight:750
}
.checkout-item {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:25px;
    padding:25px 0;
    border-top:1px solid var(--line);
    border-bottom:1px solid var(--line);
    margin:28px 0
}
.checkout-item h2 {
    margin:0
}
.checkout-item p {
    font-size:12px;
    color:var(--muted);
    margin:6px 0 0
}
.price-large {
    font-size:26px;
    letter-spacing:-1px;
    white-space:nowrap
}
.text-button {
    color:var(--blue);
    background:none;
    border:0;
    padding:5px;
    font-size:11px;
    font-weight:700
}
.danger {
    color:#d44a5e
}
.order-summary {
    display:flex;
    align-items:center;
    justify-content:space-between;
    border-block:1px solid var(--line);
    padding:20px 0;
    margin:25px 0
}
.voucher-code {
    padding:22px;
    border:1px dashed #85b0ef;
    background:var(--soft);
    border-radius:8px;
    user-select:all;
    overflow-wrap:anywhere
}
.voucher-code code {
    font-size:20px;
    color:var(--blue)
}
.contact-layout {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:70px;
    padding:45px
}
.contact-layout h1 {
    font-size:36px
}
.contact-email {
    display:flex;
    align-items:center;
    gap:10px;
    font-size:17px;
    font-weight:750;
    margin:35px 0 15px
}
.steps {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:24px;
    margin:32px 0
}
.steps article {
    padding:25px;
    background:var(--surface-alt);
    border:1px solid var(--line);
    border-radius:10px
}
.steps b {
    font-size:26px;
    color:var(--blue);
    opacity:.65
}
.steps h2 {
    margin-top:12px;
    font-size:17px
}
.steps p {
    font-size:12px;
    color:var(--muted);
    margin:0
}
.tabs {
    display:flex;
    gap:6px;
    overflow-x:auto;
    padding:8px;
    background:var(--surface);
    border:1px solid var(--line);
    border-radius:9px;
    margin:0 0 28px
}
.tabs a {
    color:var(--muted);
    font-size:11px;
    font-weight:750;
    padding:10px 14px;
    border-radius:5px;
    white-space:nowrap
}
.tabs a.active {
    background:var(--soft);
    color:var(--blue)
}
.admin-tabs {
    position:relative;
    z-index:30;
    overflow:visible
}
.admin-plugin-menu {
    position:relative;
    flex:0 0 auto
}
.admin-plugin-menu>a {
    display:flex;
    align-items:center;
    gap:7px;
    color:var(--muted);
    font-size:11px;
    font-weight:750;
    padding:10px 14px;
    border-radius:5px;
    white-space:nowrap
}
.admin-plugin-menu>a:hover,.admin-plugin-menu.active>a,.admin-plugin-menu:focus-within>a {
    background:var(--soft);
    color:var(--blue)
}
.admin-plugin-dropdown,.admin-plugin-submenu {
    display:none;
    position:absolute;
    min-width:190px;
    padding:6px;
    border:1px solid var(--line);
    border-radius:9px;
    background:var(--surface);
    box-shadow:0 12px 35px #0b173022
}
.admin-plugin-dropdown {
    top:100%;
    left:0
}
.admin-plugin-menu:hover>.admin-plugin-dropdown,.admin-plugin-menu:focus-within>.admin-plugin-dropdown {
    display:block
}
.admin-plugin-group {
    position:relative
}
.admin-plugin-group-link,.admin-plugin-submenu>a,.admin-plugin-empty {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    padding:10px 11px;
    border-radius:6px;
    color:var(--text);
    font-size:11px;
    font-weight:700;
    white-space:nowrap
}
.admin-plugin-group-link:hover,.admin-plugin-submenu>a:hover,.admin-plugin-submenu>a.active {
    background:var(--soft);
    color:var(--blue)
}
.admin-plugin-submenu {
    top:-7px;
    left:100%
}
.admin-plugin-group:hover>.admin-plugin-submenu,.admin-plugin-group:focus-within>.admin-plugin-submenu {
    display:block
}
.admin-plugin-empty {
    color:var(--muted);
    font-weight:500
}
.plugin-plans {
    padding:22px
}
.plugin-plans-heading,.plugin-plans-actions {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px
}
.plugin-plans-heading {
    margin-bottom:16px
}
.plugin-plans-heading h2 {
    margin:0 0 4px
}
.plugin-plans-heading p {
    margin:0
}
.plugin-plans-select-actions {
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:0 0 12px
}
.plugin-plans-select-actions .button {
    min-height:34px;
    padding:8px 12px;
    font-size:11px
}
.plugin-plan-check {
    display:inline-grid;
    place-items:center;
    min-width:26px;
    min-height:26px
}
.plugin-plan-check input {
    width:17px;
    height:17px;
    accent-color:var(--blue)
}
.plugin-plans-actions {
    padding-top:18px
}
.plugin-plan-submit-actions {
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
    gap:8px
}
@media (max-width:700px) {
    .plugin-plans-actions {
        align-items:flex-start;
        flex-direction:column
    }
    .plugin-plan-submit-actions {
        width:100%;
        justify-content:stretch
    }
    .plugin-plan-submit-actions .button {
        flex:1
    }
}
.plugin-module-grid {
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
    gap:14px
}
.plugin-module-card {
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    padding:19px;
    color:var(--text)
}
.plugin-module-card .settings-icon {
    margin-bottom:13px
}
.plugin-module-card .small {
    display:flex;
    align-items:center;
    gap:8px;
    margin-top:7px
}
.plugin-module-card .small .icon {
    width:14px
}
@media(max-width:1000px) {
    .admin-tabs {
        flex-wrap:wrap
    }
}
.promotion-fields {
    min-width:0;
    margin:4px 0;
    padding:14px;
    border:1px solid var(--line);
    border-radius:9px
}
.promotion-fields legend {
    padding:0 6px;
    color:var(--text);
    font-size:12px;
    font-weight:800
}
.promotion-fields p {
    margin:0 0 10px
}
.price-old {
    color:var(--muted);
    font-size:.78em;
    font-weight:500;
    text-decoration:line-through;
    text-decoration-thickness:1px
}
.price-current {
    color:#d84b60;
    font-weight:850
}
.promo-tag {
    display:inline-flex;
    align-items:center;
    padding:2px 6px;
    border-radius:5px;
    background:#fff0f1;
    color:#c7354c;
    font-size:10px;
    font-weight:850;
    white-space:nowrap
}
:root[data-theme=dark] .promo-tag {
    background:#4b2632;
    color:#ff9baa
}
.variant-prices {
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:5px 8px;
    flex-wrap:wrap;
    white-space:normal!important
}
.variant-prices .price-old {
    font-size:11px
}
.variant-prices .price-current {
    font-size:16px
}
.promo-note {
    padding:9px 11px;
    border:1px solid #f4c7cc;
    border-radius:7px;
    background:#fff6f7;
    color:#ad2d43;
    font-size:11px;
    font-weight:750
}
:root[data-theme=dark] .promo-note {
    border-color:#663543;
    background:#301e2a;
    color:#ff9baa
}
.price-stack {
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:2px
}
.admin-columns {
    display:grid;
    grid-template-columns:minmax(260px,350px) minmax(0,1fr);
    gap:24px;
    align-items:start
}
.stats-grid {
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
    margin-bottom:30px
}
.stats-grid .panel {
    padding:22px
}
.stats-grid span {
    display:block;
    font-size:11px;
    color:var(--muted)
}
.stats-grid strong {
    display:block;
    font-size:35px;
    color:var(--blue);
    margin:8px 0
}
.stats-grid a {
    font-size:10px
}
.inline-actions {
    display:flex;
    gap:10px;
    align-items:center;
    flex-wrap:wrap
}
.inline-actions select {
    width:auto;
    padding:6px
}
.button-small {
    padding:7px 11px;
    font-size:10px
}
.content-editor {
    margin-bottom:25px
}
.maintenance-body {
    background:#0b1325 var(--maintenance-bg) center center/cover fixed no-repeat;
    color:#e6eefb;
    position:relative
}
.maintenance-body::before {
    content:'';
    position:fixed;
    inset:0;
    background:linear-gradient(120deg,#061129b8,#101a3580 55%,#07142ad9);
    z-index:-1
}
.maintenance-main {
    flex:1;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    padding:55px 22px
}
.maintenance-card {
    max-width:485px;
    width:100%;
    border:1px solid #6688b540;
    border-radius:20px;
    background:#111e32ed;
    box-shadow:0 25px 90px #0005;
    overflow:hidden;
    backdrop-filter:blur(15px)
}
.maintenance-logo {
    display:flex;
    justify-content:center;
    padding:24px 30px;
    background:#101a2eda;
    border-bottom:1px solid #8da8cd20
}
.maintenance-logo img {
    width:280px;
    height:70px;
    object-fit:contain
}
.maintenance-content {
    padding:32px 42px 28px;
    text-align:center
}
.maintenance-badge {
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:5px 10px;
    border:1px solid #4ba8ea33;
    background:#178bed0c;
    border-radius:5px;
    font-size:8px;
    color:#80bffb;
    font-weight:800;
    letter-spacing:1.2px
}
.maintenance-badge .status-dot {
    background:#5bb9ff
}
.maintenance-symbol {
    display:grid;
    place-items:center;
    width:58px;
    height:58px;
    border:1px solid #3d8be04d;
    border-radius:16px;
    background:linear-gradient(145deg,#1e4b7b,#172b47);
    color:#6bbcff;
    margin:28px auto 22px;
    box-shadow:0 0 40px #1687f018
}
.maintenance-symbol .icon {
    width:29px;
    height:29px
}
.maintenance-content h1 {
    font-size:27px;
    color:#fff;
    letter-spacing:-.8px;
    line-height:1.4;
    margin-bottom:13px
}
.maintenance-content h1 span {
    color:#a7c6f2
}
.maintenance-content>p {
    font-size:11px;
    color:#92a4be;
    line-height:1.9;
    margin-bottom:0
}
.maintenance-divider {
    height:1px;
    background:#9fb5d21a;
    margin:26px 0 24px
}
.maintenance-content h2 {
    font-size:13px;
    margin:0 0 5px
}
.maintenance-content>p.small {
    font-size:10px
}
.maintenance-form {
    display:grid;
    gap:11px;
    margin-top:18px
}
.input-icon {
    display:flex;
    align-items:center;
    gap:10px;
    border:1px solid #364761;
    border-radius:8px;
    padding:0 13px;
    background:#0c182b
}
.input-icon .icon {
    width:16px;
    color:#708bad
}
.input-icon input {
    width:100%;
    border:0;
    background:none;
    color:white;
    padding:12px 0;
    font-size:11px;
    min-width:0
}
.input-icon input::placeholder {
    color:#7587a3
}
.maintenance-form .button {
    padding:12px;
    font-size:11px
}
.maintenance-contact {
    display:inline-flex;
    align-items:center;
    gap:7px;
    font-size:10px;
    color:#7e94b3;
    margin-top:22px
}
.maintenance-contact .icon {
    width:13px
}
.maintenance-footer {
    color:#8395b2;
    display:flex;
    justify-content:center;
    gap:25px;
    padding:22px;
    font-size:9px
}
.maintenance-content .notice {
    margin-top:18px;
    background:#412639;
    color:#ffb4c3;
    border-color:#67394d;
    font-size:11px
}
.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
}
.skip-link {
    position:fixed;
    top:-60px;
    left:16px;
    padding:12px;
    background:var(--blue);
    color:white;
    z-index:100
}
.skip-link:focus {
    top:10px
}
@media(min-width:1450px) {
    .container {
        width:min(1250px,calc(100% - 80px))
    }
    .product-description {
        font-size:11px
    }
    .product-card-bottom .button {
        font-size:10px
    }
    .service-brand strong {
        font-size:21px
    }
    .service-brand {
        min-height:108px
    }
}
@media(max-width:1150px) {
    .header-caption,.secure-note {
        display:none
    }
    .main-nav {
        gap:5px
    }
    .shop-layout {
        grid-template-columns:200px minmax(0,1fr);
        gap:20px
    }
    .product-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .footer-top nav {
        gap:15px
    }
    .footer-mail {
        display:none
    }
    .service-brand strong {
        font-size:23px
    }
}
@media(max-width:800px) {
    .container {
        width:calc(100% - 36px)
    }
    .header-top {
        min-height:80px;
        gap:12px
    }
    .brand img {
        width:210px
    }
    .header-actions {
        gap:7px
    }
    .account-button {
        font-size:11px;
        padding:8px
    }
    .main-nav {
        overflow-x:auto;
        min-height:55px;
        padding:5px 0
    }
    .main-nav>a,.nav-actions>a {
        font-size:10px;
        padding:9px 11px
    }
    .shop-intro h1 {
        font-size:28px
    }
    .intro-symbol {
        display:none
    }
    .benefit-strip>div {
        padding:0 14px;
        gap:8px
    }
    .benefit-strip {
        grid-template-columns:repeat(2,minmax(0,1fr));
        row-gap:12px
    }
    .benefit-strip>div:nth-child(2) {
        border-right:0
    }
    .benefit-strip>div:nth-child(-n+2) {
        padding-bottom:12px;
        border-bottom:1px solid var(--line)
    }
    .benefit-strip>div:nth-child(n+3) {
        padding-top:4px
    }
    .benefit-strip>div:last-child {
        border:0
    }
    .benefit-strip strong {
        font-size:10px
    }
    .benefit-strip small {
        font-size:9px
    }
    .benefit-strip .icon {
        width:19px
    }
    .shop-layout {
        grid-template-columns:1fr
    }
    .category-panel h2,.help-card {
        display:none
    }
    .category-panel nav {
        display:flex;
        overflow-x:auto
    }
    .category-panel nav a {
        white-space:nowrap;
        gap:12px;
        padding:9px 12px
    }
    .product-grid {
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .catalog-toolbar h2 {
        font-size:18px
    }
    .catalog-toolbar {
        margin-top:4px
    }
    .catalog-note {
        font-size:9px
    }
    .footer-top {
        align-items:flex-start;
        gap:20px
    }
    .footer-top nav {
        flex-wrap:wrap;
        justify-content:flex-end;
        max-width:230px;
        gap:10px 18px
    }
    .product-detail,.contact-layout {
        grid-template-columns:1fr;
        gap:30px;
        padding:28px
    }
    .auth-card {
        margin:15px auto
    }
    .prose {
        padding:28px
    }
    .admin-columns {
        grid-template-columns:1fr
    }
    .stats-grid {
        grid-template-columns:repeat(2,1fr)
    }
    .stats-grid strong {
        font-size:28px
    }
    .stats-grid .panel {
        padding:18px
    }
    .contact-email {
        font-size:15px
    }
    .page-heading {
        align-items:flex-start
    }
    .page-heading h1 {
        font-size:27px
    }
}
@media(max-width:500px) {
    .container {
        width:calc(100% - 28px)
    }
    .header-top {
        min-height:74px
    }
    .brand img {
        width:175px
    }
    .account-button span {
        display:none
    }
    .header-actions {
        gap:5px
    }
    .icon-button,.account-button {
        min-height:33px;
        padding:6px 8px
    }
    .icon-button .icon {
        width:17px
    }
    .cart-count {
        font-size:8px;
        min-width:13px
    }
    .cart-button {
        gap:4px
    }
    .shop-intro {
        padding-bottom:22px
    }
    .shop-intro h1 {
        font-size:28px;
        max-width:300px;
        line-height:1.35
    }
    .shop-intro h1 span {
        display:block
    }
    .shop-intro p {
        font-size:11px
    }
    .eyebrow {
        font-size:9px
    }
    .breadcrumb {
        margin-bottom:20px
    }
    .benefit-strip {
        padding:13px 0;
        margin-bottom:20px
    }
    .benefit-strip>div {
        padding:0 9px;
        flex-direction:column;
        text-align:center;
        gap:5px
    }
    .benefit-strip strong {
        font-size:8px
    }
    .benefit-strip small {
        font-size:7px
    }
    .benefit-strip .icon {
        width:18px;
        height:18px
    }
    .shop-layout {
        gap:18px
    }
    .catalog-toolbar {
        flex-wrap:wrap;
        gap:13px
    }
    .search-form {
        max-width:none;
        width:100%
    }
    .product-grid {
        gap:12px
    }
    .product-card {
        padding:12px
    }
    .service-brand {
        gap:7px;
        min-height:82px
    }
    .service-monogram {
        width:27px;
        height:32px;
        border-radius:7px;
        font-size:19px
    }
    .service-brand strong {
        font-size:16px;
        letter-spacing:-.7px
    }
    .product-description {
        font-size:9px;
        min-height:50px;
        margin-bottom:10px
    }
    .product-meta {
        font-size:8px;
        padding-bottom:12px
    }
    .product-type {
        font-size:7px;
        padding:2px 4px
    }
    .product-card-bottom {
        flex-wrap:wrap;
        padding-top:12px;
        gap:9px
    }
    .product-card-bottom strong {
        font-size:18px
    }
    .product-card-bottom .button {
        width:100%;
        font-size:9px;
        padding:8px
    }
    .catalog-note {
        align-items:flex-start
    }
    .site-main {
        padding-bottom:35px
    }
    .footer-top {
        padding-block:24px;
        display:block
    }
    .footer-top nav {
        margin-top:20px;
        max-width:none;
        justify-content:flex-start
    }
    .footer-bottom {
        display:block;
        font-size:8px;
        padding-block:13px
    }
    .footer-bottom>span:last-child {
        margin-top:5px
    }
    .auth-card {
        padding:27px 23px
    }
    .auth-card h1 {
        font-size:26px
    }
    .product-detail,.contact-layout,.prose {
        padding:25px 20px
    }
    .product-detail h1 {
        font-size:28px
    }
    .variant-panel {
        padding:18px
    }
    .variant-option {
        padding:11px;
        gap:8px
    }
    .variant-option b {
        font-size:15px
    }
    .variant-option strong {
        font-size:12px
    }
    .checkout-item {
        flex-wrap:wrap;
        gap:16px
    }
    .checkout-item>div {
        width:100%
    }
    .checkout-item .price-large {
        font-size:23px
    }
    .steps {
        grid-template-columns:1fr;
        gap:15px
    }
    .steps article {
        padding:20px
    }
    .order-summary {
        gap:10px
    }
    .price-large {
        font-size:23px
    }
    .contact-layout h1 {
        font-size:30px
    }
    .maintenance-main {
        padding:30px 16px
    }
    .maintenance-content {
        padding:27px 26px 25px
    }
    .maintenance-content h1 {
        font-size:24px
    }
    .maintenance-logo {
        padding:18px
    }
    .maintenance-logo img {
        width:250px;
        height:auto
    }
    .maintenance-footer {
        flex-direction:column;
        text-align:center;
        gap:3px;
        padding:15px
    }
    .page-heading {
        flex-wrap:wrap
    }
    .page-heading .search-form {
        max-width:none
    }
    .stats-grid {
        gap:10px
    }
    .tabs {
        margin-bottom:22px
    }
    .table-panel>h2 {
        padding:20px 20px 8px
    }
    .form-panel {
        padding:22px
    }
}

/* Full-width buying guide with a small decorative icon illustration. */
.help-page {
    width: 100%;
    max-width: none;
    margin: 18px 0;
    padding: 36px clamp(24px, 4vw, 52px);
    overflow: hidden;
}
.legal-page {
    width: 100%;
    max-width: none;
    margin: 18px 0;
}
.help-heading {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 170px;
    padding: 4px 0 20px;
    border-bottom: 1px solid var(--line);
}
.help-heading h1 {
    margin: 0;
    font-size: clamp(30px, 3.2vw, 42px);
    letter-spacing: -1.6px;
}
.help-heading p {
    margin: 8px 0 0;
    color: var(--muted);
}
.help-heading .eyebrow {
    margin-bottom: 8px;
}
.help-art {
    position: relative;
    width: 230px;
    height: 150px;
    margin-right: 18px;
    flex: 0 0 230px;
}
.help-art-orbit {
    position: absolute;
    inset: 7px 20px 1px 36px;
    border: 1px solid color-mix(in srgb, var(--blue) 20%, transparent);
    border-radius: 50%;
    transform: rotate(-22deg);
    background: radial-gradient(ellipse at 65% 42%, color-mix(in srgb, var(--blue) 16%, transparent), transparent 68%);
}
.help-art-tile {
    position: absolute;
    display: grid;
    place-items: center;
    border: 1px solid color-mix(in srgb, var(--blue) 23%, var(--line));
    background: linear-gradient(145deg, var(--surface), var(--soft));
    box-shadow: 0 14px 32px color-mix(in srgb, var(--blue) 13%, transparent);
}
.help-art-tile-main {
    top: 23px;
    right: 56px;
    width: 82px;
    height: 82px;
    border-radius: 23px;
    color: var(--blue);
    transform: rotate(8deg);
}
.help-art-tile-main .icon {
    width: 38px;
    height: 38px;
    stroke-width: 1.5;
}
.help-art-tile-small {
    right: 18px;
    bottom: 15px;
    width: 47px;
    height: 47px;
    border-radius: 15px;
    color: #13b98b;
    transform: rotate(-12deg);
}
.help-art-tile-small .icon {
    width: 23px;
    height: 23px;
}
.help-art-spark {
    position: absolute;
    color: var(--blue);
    line-height: 1;
}
.help-art-spark-one {
    top: 10px;
    right: 22px;
    font-size: 23px;
}
.help-art-spark-two {
    left: 24px;
    bottom: 24px;
    font-size: 16px;
    color: #13b98b;
}
.help-page .steps {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    margin: 28px 0;
}
.help-page .steps article {
    min-height: 185px;
    padding: 22px 20px;
    background: linear-gradient(155deg, var(--surface-alt), var(--surface));
}
.help-page .steps article b {
    display: inline-grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 13px;
    background: var(--soft);
    color: var(--blue);
    opacity: 1;
    font-size: 15px;
}
.help-page .steps article h2 {
    margin: 16px 0 7px;
}
.help-page .steps article p {
    line-height: 1.8;
}
.help-contact {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px 22px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: var(--surface-alt);
}
.help-contact-icon {
    display: grid;
    place-items: center;
    width: 46px;
    height: 46px;
    flex: 0 0 46px;
    border-radius: 14px;
    background: var(--soft);
    color: var(--blue);
}
.help-contact-icon .icon {
    width: 22px;
    height: 22px;
}
.help-contact h2 {
    margin: 0;
    font-size: 16px;
}
.help-contact p {
    margin: 3px 0 0;
    color: var(--muted);
    font-size: 12px;
}
.help-contact .button {
    margin-left: auto;
    flex: 0 0 auto;
}
@media (max-width: 1050px) {
    .help-page .steps {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 650px) {
    .help-page {
        padding: 26px 20px;
    }
    .help-heading {
        min-height: 155px;
        align-items: flex-start;
    }
    .help-heading > div:first-child {
        position: relative;
        z-index: 1;
        max-width: 72%;
    }
    .help-art {
        position: absolute;
        top: -5px;
        right: -70px;
        width: 190px;
        transform: scale(.8);
        transform-origin: top right;
    }
    .help-page .steps {
        gap: 12px;
    }
    .help-page .steps article {
        min-height: 0;
        padding: 17px 15px;
    }
    .help-contact {
        align-items: flex-start;
        flex-wrap: wrap;
        padding: 17px;
    }
    .help-contact > div {
        flex: 1 1 calc(100% - 62px);
    }
    .help-contact .button {
        margin: 0 0 0 62px;
    }
}
@media(prefers-reduced-motion:reduce) {
    * {
        scroll-behavior:auto!important;
        transition:none!important
    }
}
/* Grid children must shrink independently of horizontally scrollable navigation. */
.shop-layout>* {
    min-width:0
}

/* Strefa użytkownika */
.account-layout {
    display: grid;
    grid-template-columns: 230px minmax(0, 1fr);
    gap: 26px;
    align-items: start;
    padding-top: 9px;
}
.account-content, .account-sidebar {
    min-width: 0;
}
.account-sidebar {
    position: sticky;
    top: 24px;
}
.user-menu {
    overflow: hidden;
}
.user-menu-profile {
    display: flex;
    align-items: center;
    gap: 11px;
    padding: 22px 19px;
    border-bottom: 1px solid var(--line);
}
.user-avatar {
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    flex-shrink: 0;
    border-radius: 11px;
    background: var(--soft);
    color: var(--blue);
    font-size: 19px;
    font-weight: 800;
}
.user-menu-profile strong {
    display: block;
    font-size: 13px;
    overflow-wrap: anywhere;
}
.user-menu-profile small {
    display: block;
    font-size: 10px;
    color: var(--muted);
}
.user-menu nav {
    display: grid;
    gap: 4px;
    padding: 10px;
}
.user-menu nav a {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 13px 11px;
    color: var(--muted);
    border-radius: 7px;
    font-size: 12px;
    font-weight: 750;
}
.user-menu nav a:hover, .user-menu nav a.selected {
    background: var(--soft);
    color: var(--blue);
}
.user-menu nav .icon {
    width: 17px;
    height: 17px;
}
.user-menu nav .menu-arrow {
    width: 13px;
    margin-left: auto;
    opacity: .5;
}
.user-menu-logout {
    display: block;
    padding: 15px 23px;
    border-top: 1px solid var(--line);
    color: var(--muted);
    font-size: 11px;
}
.account-heading {
    margin: 0 0 25px;
}
.account-heading h1 {
    font-size: 29px;
}
.account-heading p {
    font-size: 12px;
}
.account-heading .status .icon {
    width: 13px;
    height: 13px;
    margin-right: 4px;
}
.account-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
    margin-bottom: 25px;
}
.account-stat {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    padding: 24px;
    color: var(--text);
}
.stat-icon, .settings-icon {
    display: grid;
    place-items: center;
    width: 37px;
    height: 37px;
    border-radius: 10px;
    color: var(--blue);
    background: var(--soft);
    margin-bottom: 16px;
}
.account-stat>span:not(.stat-icon) {
    font-size: 11px;
    color: var(--muted);
}
.account-stat strong {
    font-size: 30px;
    letter-spacing: -1px;
    line-height: 1.5;
    color: var(--text);
    margin-top: 5px;
    overflow-wrap: anywhere;
}
.account-stat small {
    display: flex;
    align-items: center;
    gap: 10px;
    color: var(--blue);
    font-size: 10px;
    margin-top: 13px;
}
.account-stat small .icon {
    width: 13px;
    height: 13px;
}
.account-overview {
    padding: 27px;
}
.section-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid var(--line);
}
.section-heading h2 {
    margin: 0;
    font-size: 17px;
}
.section-heading a {
    white-space: nowrap;
    font-size: 11px;
    font-weight: 750;
}
.section-heading .icon {
    width: 13px;
}
.account-data {
    margin: 4px 0 0;
}
.account-data>div {
    display: grid;
    grid-template-columns: 180px minmax(0, 1fr);
    gap: 15px;
    padding: 16px 0;
    border-bottom: 1px solid var(--line);
    font-size: 12px;
}
.account-data>div:last-child {
    border: 0;
    padding-bottom: 0;
}
.account-data dt {
    color: var(--muted);
}
.account-data dd {
    margin: 0;
    font-weight: 700;
    overflow-wrap: anywhere;
}
.verified-label {
    display: inline-block;
    margin-left: 10px;
    color: #15946e;
    font-size: 10px;
}
.account-settings-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
    align-items: start;
}
.account-settings-grid .form-panel {
    padding: 27px;
}
.account-settings-grid p {
    overflow-wrap: anywhere;
}
.account-content>.prose {
    margin: 0;
    max-width: none;
}
.pending-email {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    overflow-wrap: anywhere;
}
.pending-email form {
    flex-shrink: 0;
}
.account-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 20px;
    margin-top: 20px;
    color: var(--muted);
    font-size: 11px;
}
.activation-link {
    text-align: center;
    font-size: 11px;
    margin: 19px 0 0;
}
@media (max-width: 1000px) {
    .account-layout {
        grid-template-columns: 200px minmax(0, 1fr);
        gap: 20px;
    }
    .account-stats {
        gap: 11px;
    }
    .account-stat {
        padding: 18px;
    }
    .account-stat strong {
        font-size: 25px;
    }
    .account-settings-grid {
        grid-template-columns: minmax(0, 1fr);
    }
}
@media (max-width: 800px) {
    .account-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 25px;
        padding-top: 0;
    }
    .account-sidebar {
        position: static;
    }
    .user-menu-profile {
        display: none;
    }
    .user-menu-logout {
        padding: 9px 20px;
        text-align: right;
    }
    .user-menu nav {
        display: flex;
        overflow-x: auto;
        scrollbar-width: none;
        padding: 7px;
    }
    .user-menu nav a {
        flex-shrink: 0;
        white-space: nowrap;
        padding: 10px 13px;
        font-size: 11px;
        gap: 7px;
    }
    .user-menu nav .menu-arrow {
        display: none;
    }
}
@media (max-width: 500px) {
    .account-heading h1 {
        font-size: 26px;
    }
    .user-menu nav {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .account-heading {
        gap: 13px;
        margin-bottom: 21px;
    }
    .account-heading .button {
        font-size: 11px;
    }
    .account-stats {
        grid-template-columns: minmax(0, 1fr);
        gap: 12px;
    }
    .account-stat {
        display: grid;
        grid-template-columns: 40px minmax(0, 1fr) auto;
        gap: 3px 14px;
        align-items: center;
        padding: 18px;
    }
    .account-stat .stat-icon {
        grid-row: 1 / 3;
        margin: 0;
    }
    .account-stat strong {
        grid-column: 3;
        grid-row: 1 / 3;
        font-size: 22px;
        margin: 0;
    }
    .account-stat small {
        margin: 0;
        font-size: 9px;
    }
    .account-stat>span:not(.stat-icon) {
        font-size: 10px;
    }
    .account-overview, .account-settings-grid .form-panel {
        padding: 22px;
    }
    .account-data>div {
        grid-template-columns: minmax(0, 1fr);
        gap: 4px;
        padding: 13px 0;
    }
    .section-heading h2 {
        font-size: 16px;
    }
    .section-heading a {
        font-size: 10px;
    }
    .pending-email {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }
    .account-pagination {
        gap: 12px;
        font-size: 10px;
    }
    .account-pagination .button {
        padding: 8px;
        font-size: 10px;
    }
}
.main-nav,.category-panel nav {
    scrollbar-width:none
}
.main-nav::-webkit-scrollbar,.category-panel nav::-webkit-scrollbar {
    display:none
}
@media(max-width:800px) {
    .shop-layout {
        grid-template-columns:minmax(0,1fr)
    }
}
@media(max-width:500px) {
    .product-description {
        font-size:11px;
        min-height:70px
    }
    .product-type {
        font-size:8px
    }
    .product-meta {
        font-size:9px
    }
    .product-card-bottom .button {
        font-size:10px
    }
    .benefit-strip strong {
        font-size:9px
    }
    .benefit-strip small {
        font-size:8px
    }
}
@media(max-width:800px) {
    .admin-tabs {
        flex-wrap:wrap
    }
}
.payment-heading { margin: 0 auto 22px; max-width: 1240px; }
.payment-heading > a { color: var(--muted); font-size: .9rem; }
.payment-heading h1 { margin: 18px 0 0; }
.payment-layout { display: grid; grid-template-columns: minmax(260px, 1.1fr) repeat(3, minmax(0, .9fr)); gap: 14px; max-width: 1240px; margin: 0 auto; align-items: stretch; }
.payment-summary { padding: 28px; }
.payment-method { display: flex; flex-direction: column; padding: 18px; }
.payment-summary { display: flex; flex-direction: column; gap: 8px; }
.payment-summary h2 { margin: 8px 0 0; font-size: 1.15rem; }
.payment-summary hr { width: 100%; border: 0; border-top: 1px solid var(--line); margin: 12px 0; }
.payment-summary > strong:not(.payment-amount) { overflow-wrap: anywhere; }
.payment-amount { color: var(--blue); font-size: 2rem; }
.payment-brand-logo { display: flex; align-items: center; justify-content: center; width: 100%; height: 64px; margin: 0 0 24px; padding: 8px 14px; border-radius: 8px; background: #fff; }
.payment-brand-logo img { display: block; max-width: 190px; max-height: 48px; width: auto; height: auto; object-fit: contain; }
.payment-method h2 { margin: 0 0 8px; }
.payment-method > .muted { min-height: 44px; }
.payment-form { display: grid; gap: 14px; margin-top: 28px; }
.payment-form-centered { justify-items: center; }
.payment-form .button { justify-self: start; }
.payment-form-centered .button { justify-self: center; }
.payment-form label { display: grid; gap: 8px; font-weight: 650; }
.payment-method-logos { display: flex; justify-content: center; align-items: center; min-height: 42px; margin-top: auto; padding-top: 16px; }
.payment-method-logos img { display: block; width: min(100%, 250px); max-height: 42px; object-fit: contain; }
.payment-status { max-width: 1240px; margin: 18px auto 0; }
.payment-modal { width: min(500px, calc(100% - 32px)); max-width: none; max-height: min(90vh, 760px); padding: 0; overflow: auto; color: var(--text); background: var(--surface); border: 1px solid var(--line); border-radius: 16px; box-shadow: 0 24px 80px rgba(5, 15, 35, .35); }
.payment-modal::backdrop { background: rgba(7, 15, 30, .68); backdrop-filter: blur(3px); }
.payment-modal-content { position: relative; padding: 28px; }
.payment-modal-content h2 { margin: 4px 0 18px; text-align: center; }
.payment-modal-content > p { margin: 12px 0 5px; }
.payment-modal-content .payment-brand-logo { margin-bottom: 18px; }
.payment-modal-content .small { margin: 18px 0 22px; }
.payment-modal-close { position: absolute; top: 10px; right: 12px; width: 36px; height: 36px; border: 0; border-radius: 50%; color: var(--muted); background: var(--surface-alt); font-size: 24px; cursor: pointer; }
.paypal-value { overflow-wrap: anywhere; font-weight: 750; font-size: 1.1rem; }
.paypal-value code { display: inline-block; padding: 9px 13px; border-radius: 7px; color: var(--text); background: var(--surface-alt); font-size: 1.25rem; letter-spacing: .04em; }
.paypal-copy-row { display: flex; align-items: center; justify-content: space-between; gap: 12px; min-width: 0; }
.paypal-copy-row .paypal-value { min-width: 0; margin: 0; }
.paypal-copy-button { flex: 0 0 auto; min-height: 40px; padding: 8px 13px; }
.paypal-copy-status { min-height: 1.2em; margin: -8px 0 0; color: var(--success, #087f5b); font-size: .85rem; }
@media (max-width: 420px) { .paypal-copy-row { align-items: flex-start; flex-direction: column; } }
.gateway-redirect { max-width: 640px; margin: 32px auto; }
.support-inbox-layout { display: grid; grid-template-columns: minmax(280px, .85fr) minmax(0, 1.6fr); gap: 20px; align-items: start; }
.support-inbox-list, .support-thread { min-width: 0; padding: 22px; }
.support-inbox-list h2 { margin: 0 0 16px; font-size: 1.1rem; }
.support-inbox-list table { min-width: 0; }
.support-inbox-list td small { display: block; margin-top: 5px; color: var(--muted); overflow-wrap: anywhere; }
.support-thread { display: grid; gap: 18px; }
.support-thread-heading { display: flex; justify-content: space-between; align-items: start; gap: 14px; }
.support-thread-heading h2 { margin: 5px 0; overflow-wrap: anywhere; }
.support-thread-heading p { margin: 0; overflow-wrap: anywhere; }
.support-messages { display: grid; gap: 12px; max-height: 62vh; overflow: auto; padding: 3px; }
.support-message { min-width: 0; padding: 16px; border: 1px solid var(--line); border-radius: 12px; background: var(--surface-alt); }
.support-message.staff { border-color: color-mix(in srgb, var(--blue) 35%, var(--line)); }
.support-message-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; color: var(--muted); font-size: .82rem; }
.support-message-meta strong { color: var(--text); }
.support-message p { margin: 12px 0 0; white-space: normal; overflow-wrap: anywhere; }
.support-reply-form { padding-top: 18px; border-top: 1px solid var(--line); }
.support-reply-form textarea { min-height: 150px; }
.support-thread-empty { min-height: 300px; }
@media (max-width: 850px) { .support-inbox-layout { grid-template-columns: 1fr; } .support-inbox-list .table-scroll { max-height: 360px; overflow: auto; } }
@media (max-width: 520px) { .support-inbox-list, .support-thread { padding: 16px; } .support-thread-heading { flex-direction: column; } }
@media (max-width: 800px) { .payment-layout { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 580px) { .payment-layout { grid-template-columns: 1fr; } .payment-summary, .payment-method { padding: 20px; } }
