.commerce-nav {
    display:flex;
    gap:18px;
    align-items:center;
    white-space:nowrap;
}
.commerce-nav a {
    display:flex;
    align-items:center;
    gap:7px;
    font-size:.85rem;
}
.commerce-nav b {
    display:inline-grid;
    place-items:center;
    min-width:21px;
    height:21px;
    padding:0 5px;
    background:var(--accent);
    color:white;
    border-radius:50%;
    font-size:.7rem;
}
.commerce-nav a:hover,.account-nav a:hover,.commerce-link:hover {
    color:#75afff;
}
.commerce-page {
    padding-top:46px;
    padding-bottom:80px;
    min-height:65vh;
}
.commerce-heading {
    display:flex;
    justify-content:space-between;
    align-items:end;
    gap:24px;
    margin-bottom:28px;
}
.commerce-heading h1 {
    font-size:clamp(1.8rem,4vw,2.6rem);
    letter-spacing:-.035em;
    line-height:1.25;
}
.commerce-eyebrow,.commerce-kicker {
    font-size:.72rem;
    letter-spacing:.18em;
    color:#81b5ff;
    margin-bottom:10px;
}
.commerce-back {
    font-size:.9rem;
    color:var(--muted);
}
.commerce-panel {
    background:linear-gradient(135deg,#0e1a33,#0a1429);
    border:1px solid var(--border);
    border-radius:14px;
    padding:28px;
    min-width:0;
}
.commerce-panel h2 {
    font-size:1.15rem;
    margin-bottom:20px;
}
.commerce-panel h3 {
    font-size:1rem;
    margin-bottom:14px;
}
.commerce-columns {
    display:grid;
    grid-template-columns:minmax(0,1fr) 350px;
    gap:24px;
    align-items:start;
}
.commerce-form {
    display:flex;
    flex-direction:column;
    gap:10px;
}
.commerce-form label {
    font-size:.85rem;
    font-weight:500;
    color:#c3d1e8;
    margin-top:7px;
}
.commerce-form input:not([type=checkbox]),.commerce-form select,.commerce-form textarea {
    background:#070f20;
    color:var(--text);
    border:1px solid #2a3a58;
    border-radius:7px;
    padding:11px 13px;
    font:inherit;
    min-width:0;
    width:100%;
}
.commerce-form input:focus,.commerce-form select:focus,.commerce-form textarea:focus {
    outline:2px solid #5599f4;
    outline-offset:2px;
}
.commerce-form small,.commerce-muted {
    font-size:.83rem;
    color:var(--muted);
    line-height:1.7;
}
.commerce-form .btn {
    margin-top:12px;
    align-self:start;
}
.commerce-form .commerce-check {
    display:flex;
    align-items:center;
    gap:9px;
    margin:12px 0;
}
.commerce-check input {
    accent-color:var(--accent);
    width:16px;
    height:16px;
}
.commerce-notice {
    border:1px solid #285489;
    border-radius:10px;
    background:#102646;
    padding:16px 20px;
    margin:20px 0;
    font-size:.9rem;
    line-height:1.7;
}
.commerce-notice p {
    margin-top:7px;
}
.commerce-error {
    border-color:#7c3545;
    background:#301b2a;
    color:#ffc1c1;
}
.commerce-error ul {
    padding-left:16px;
}
.commerce-danger {
    color:#ffaaaa;
    font-size:.85rem;
}
.commerce-link {
    border:0;
    background:none;
    color:var(--muted);
    font:inherit;
    font-size:.85rem;
    cursor:pointer;
    padding:8px 0;
}
.commerce-panel .btn:disabled,.product-purchase .btn:disabled {
    opacity:.5;
    cursor:not-allowed;
}
.account-nav {
    display:flex;
    align-items:center;
    gap:28px;
    margin-bottom:30px;
    border-bottom:1px solid var(--border);
    padding-bottom:16px;
    font-size:.9rem;
}
.account-nav a[aria-current=page] {
    color:#83b8ff;
}
.account-nav form {
    margin-left:auto;
}
.account-nav button {
    background:none;
    border:0;
    color:var(--muted);
    font:inherit;
    cursor:pointer;
}
.auth-layout {
    display:grid;
    grid-template-columns:1fr 440px;
    gap:80px;
    align-items:center;
    max-width:1000px;
    margin:44px auto;
}
.auth-intro h2 {
    font-size:clamp(2rem,4vw,3.1rem);
    line-height:1.15;
    letter-spacing:-.04em;
    margin:20px 0;
}
.auth-intro p {
    color:var(--muted);
    line-height:1.9;
}
.auth-benefits {
    display:flex;
    flex-direction:column;
    gap:20px;
    margin-top:42px;
    color:#bdd1ef;
    font-size:.85rem;
}
.auth-links {
    display:flex;
    justify-content:space-between;
    gap:16px;
    margin-top:22px;
    font-size:.85rem;
    color:#87b7fc;
}
.auth-layout .btn {
    width:100%;
}
.commerce-empty {
    padding:70px 20px;
    text-align:center;
    border:1px dashed #294264;
    border-radius:14px;
}
.commerce-empty i {
    font-size:2.5rem;
    color:#639fe9;
    margin-bottom:20px;
}
.commerce-empty p {
    color:var(--muted);
    margin:12px 0 28px;
}
.commerce-empty .btn {
    margin-top:24px;
}
.cart-item {
    display:flex;
    gap:22px;
    padding:24px 0;
    border-bottom:1px solid var(--border);
    align-items:flex-start;
}
.cart-item:first-child {
    padding-top:0;
}
.cart-item:last-child {
    padding-bottom:0;
    border-bottom:0;
}
.cart-image {
    width:78px;
    height:92px;
    background:#142543;
    display:grid;
    place-items:center;
    border-radius:9px;
    flex-shrink:0;
    color:#6c9bd8;
    font-size:1.7rem;
    overflow:hidden;
}
.cart-image img {
    width:100%;
    height:100%;
    object-fit:contain;
}
.cart-item-info {
    flex:1;
    min-width:0;
}
.cart-item h2 {
    font-size:1rem;
    margin:0 0 6px;
}
.cart-item-info p {
    color:var(--muted);
    font-size:.85rem;
    margin-bottom:8px;
}
.cart-item-info>span {
    font-size:.9rem;
}
.cart-item>strong {
    white-space:nowrap;
    font-size:.9rem;
}
.cart-controls {
    display:flex;
    gap:16px;
    align-items:center;
    flex-wrap:wrap;
    margin-top:12px;
}
.inline-form {
    flex-direction:row;
    align-items:center;
    gap:8px;
}
.inline-form input[type=number] {
    width:67px;
    padding:7px;
}
.inline-form .btn {
    margin:0;
    padding:8px 10px;
}
.commerce-totals {
    margin:20px 0;
}
.commerce-totals>div {
    display:flex;
    justify-content:space-between;
    gap:20px;
    padding:10px 0;
    font-size:.9rem;
}
.commerce-totals dt {
    color:var(--muted);
}
.commerce-totals dd {
    margin:0;
    text-align:right;
}
.commerce-totals .grand-total {
    border-top:1px solid var(--border);
    margin-top:12px;
    padding-top:20px;
    font-size:1.2rem;
    font-weight:600;
}
.grand-total dt {
    color:var(--text);
}
.order-summary {
    position:sticky;
    top:90px;
}
.order-summary>.btn,.order-summary>form>.btn {
    width:100%;
    margin-top:14px;
}
.order-summary>form {
    text-align:center;
}
.checkout-steps {
    display:flex;
    gap:26px;
    color:var(--muted);
    font-size:.8rem;
    margin-bottom:24px;
}
.checkout-steps strong {
    color:#87b7fc;
}
.commerce-form.commerce-columns {
    display:grid;
}
.address-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}
.address-grid>div {
    display:flex;
    flex-direction:column;
    gap:7px;
    min-width:0;
}
.field-wide {
    grid-column:1/-1;
}
.summary-item {
    display:flex;
    justify-content:space-between;
    gap:18px;
    border-bottom:1px solid var(--border);
    padding:16px 0;
    font-size:.9rem;
}
.summary-item small {
    display:block;
    color:var(--muted);
    font-size:.8rem;
    margin-top:6px;
}
.summary-item strong,.summary-item b {
    white-space:nowrap;
}
.address-options {
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-bottom:20px;
}
.address-option {
    border:1px solid var(--border);
    border-radius:8px;
    padding:12px;
    font-size:.85rem;
}
.address-option.selected {
    border-color:#5599f4;
    background:#102646;
}
.address-option span {
    display:block;
    color:var(--muted);
    font-size:.8rem;
    margin-top:4px;
}
.commerce-account-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:24px;
    align-items:start;
}
.address-book {
    margin-top:36px;
}
.address-book>h2 {
    margin-bottom:20px;
    font-size:1.3rem;
}
.address-book p,.order-address p {
    color:#b9c9df;
    line-height:1.8;
    margin-bottom:12px;
}
.address-book details {
    margin:16px 0;
}
.address-book summary {
    cursor:pointer;
    color:#87b7fc;
    font-size:.85rem;
}
.order-list {
    display:grid;
    gap:18px;
}
.order-card-head,.order-card-bottom {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}
.order-card h2 {
    margin:5px 0 0;
    font-size:1.1rem;
}
.order-card small,.order-card>p {
    color:var(--muted);
    font-size:.85rem;
}
.order-card>p {
    margin:18px 0;
}
.order-badge {
    display:inline-block;
    border-radius:30px;
    padding:5px 12px;
    font-size:.75rem;
    font-weight:600;
    background:#183351;
    color:#b3d6ff;
    white-space:nowrap;
}
.status-pending_payment {
    background:#3a2b16;
    color:#efc879;
}
.status-paid,.status-completed {
    background:#163932;
    color:#8adeba;
}
.status-cancelled,.status-refunded {
    background:#283142;
    color:#abb9cc;
}
.order-status-bar {
    display:flex;
    align-items:center;
    gap:16px;
    margin-bottom:22px;
    font-size:.85rem;
    color:var(--muted);
}
.order-address {
    margin-top:20px;
}
.commerce-pagination {
    margin-top:28px;
}
.commerce-pagination ul {
    display:flex;
    justify-content:center;
    gap:25px;
    list-style:none;
}
.product-purchase {
    margin:22px 0;
}
.product-purchase input[type=number] {
    max-width:100px;
}
.product-purchase select {
    max-width:350px;
}
.product-purchase .pd-actions {
    margin-top:0;
}
.sr-only {
    position:absolute;
    width:1px;
    height:1px;
    padding:0;
    overflow:hidden;
    clip:rect(0,0,0,0);
    white-space:nowrap;
    border:0;
}
@media(max-width:1100px) {
    .commerce-nav a span {
        display:none;
    }
    .nav-inner {
        gap:18px;
    }
    .nav-links {
        gap:18px;
    }
    .commerce-columns {
        grid-template-columns:minmax(0,1fr) 310px;
    }
    .auth-layout {
        gap:40px;
        grid-template-columns:1fr 400px;
    }
}
@media(max-width:800px) {
    .commerce-columns,.commerce-form.commerce-columns,.commerce-account-grid,.auth-layout {
        grid-template-columns:1fr;
    }
    .auth-layout {
        margin:20px auto;
        max-width:480px;
        gap:30px;
    }
    .auth-intro h2 {
        font-size:2rem;
    }
    .auth-benefits {
        display:none;
    }
    .order-summary {
        position:static;
    }
    .commerce-page {
        padding-top:28px;
    }
    .commerce-panel {
        padding:22px;
    }
    .commerce-heading {
        align-items:start;
    }
    .commerce-back {
        font-size:.8rem;
        max-width:120px;
        text-align:right;
    }
    .commerce-nav {
        margin-left:auto;
        gap:15px;
    }
    .cart-image {
        width:62px;
        height:76px;
    }
    .cart-item {
        gap:14px;
    }
    .checkout-steps {
        gap:14px;
    }
    .account-nav {
        gap:18px;
    }
}
@media(max-width:480px) {
    .commerce-page {
        padding-left:16px;
        padding-right:16px;
    }
    .commerce-panel {
        padding:18px;
    }
    .address-grid {
        grid-template-columns:1fr;
    }
    .cart-item {
        flex-wrap:wrap;
    }
    .cart-item-info {
        min-width:150px;
    }
    .cart-item>strong {
        margin-left:76px;
    }
    .account-nav {
        font-size:.8rem;
        gap:14px;
    }
    .nav-inner {
        gap:10px;
    }
    .brand {
        font-size:1.2rem;
    }
    .commerce-nav {
        gap:10px;
    }
    .commerce-heading {
        gap:12px;
    }
    .commerce-heading h1 {
        font-size:1.65rem;
    }
}
@media(max-width:800px) {
    .nav-inner>.lang-switcher {
        display:none;
    }
    .nav-open .nav-inner>.lang-switcher {
        display:flex;
        order:4;
        margin:10px 0 0;
    }
    .nav-inner>.menu-toggle {
        margin-left:0;
        flex-shrink:0;
    }
}
