/* Authentication, publishing, profile, account tools and chat. */

.wc-theme.page-login main,
.wc-theme.page-register main {
    background: #edf1ed;
}

.wc-theme .login-card {
    padding: clamp(1.3rem, 3vw, 2rem);
    border-top: 6px solid var(--theme-accent);
    box-shadow: 7px 8px 0 rgba(23, 53, 62, .12);
}

.wc-theme .login-title {
    color: var(--theme-ink);
    font-size: clamp(1.45rem, 3vw, 2rem);
}

.wc-theme .login-sub {
    color: var(--theme-muted);
    line-height: 1.65;
}

.wc-theme .login-card .btn-group {
    gap: 6px;
}

.wc-theme .login-card .btn-group > .btn {
    border-radius: 8px !important;
}

.wc-theme .login-card .btn-check:checked + .btn {
    color: #fff;
    border-color: var(--theme-ink);
    background: var(--theme-ink);
}

.wc-theme .page-head {
    border-bottom-color: var(--theme-line);
}

.wc-theme .page-head-ico {
    border: 1px solid var(--theme-line);
    border-radius: 9px;
    color: var(--theme-accent-dark);
    background: #fff3e9;
}

.wc-theme .page-head-text h1 {
    color: var(--theme-ink);
}

.wc-theme .page-head-text p {
    color: var(--theme-muted);
}

.wc-theme .user-sidebar,
.wc-theme .account-sidebar,
.wc-theme .profile-hero {
    border-color: var(--theme-line);
    border-radius: var(--theme-radius);
    background: var(--theme-surface);
    box-shadow: var(--theme-shadow-sm);
}

.wc-theme .user-sidebar a.active,
.wc-theme .user-sidebar a:hover,
.wc-theme .account-sidebar a.active,
.wc-theme .account-sidebar a:hover {
    color: var(--theme-ink);
    background: var(--theme-mint-soft);
}

.wc-theme .ml-card,
.wc-theme .device-card,
.wc-theme .credit-group {
    border-color: var(--theme-line);
    border-radius: 10px;
    background: var(--theme-surface-soft);
    box-shadow: 3px 3px 0 rgba(23, 53, 62, .06);
}

.wc-theme .ml-card:hover,
.wc-theme .device-card:hover {
    border-color: var(--theme-mint);
    box-shadow: 5px 5px 0 var(--theme-mint-soft);
}

.wc-theme .ml-card-title,
.wc-theme .device-title {
    color: var(--theme-ink);
}

.wc-theme .ml-card-price {
    color: var(--theme-accent-dark);
    font-weight: 900;
}

.wc-theme .device-card.is-current {
    border-color: var(--theme-mint);
    background: var(--theme-mint-soft);
}

.wc-theme .device-card .device-icon {
    color: var(--theme-ink);
    background: var(--theme-sand);
}

.wc-theme .credits-banner {
    border-inline-start: 6px solid var(--theme-success);
}

/* Publish wizard: preserve step layout and JS visibility rules. */
.wc-theme .wizard-card {
    overflow: hidden;
    border: 1px solid var(--theme-line);
    border-radius: var(--theme-radius-lg);
    background: var(--theme-surface);
    box-shadow: 8px 9px 0 rgba(23, 53, 62, .11);
}

.wc-theme .wizard-head {
    border-bottom-color: var(--theme-line);
    background: var(--theme-surface);
}

.wc-theme .wizard-head h1 i {
    color: var(--theme-accent) !important;
}

.wc-theme .wizard-stepper {
    border-bottom-color: var(--theme-line);
    background: #edf1ed;
}

.wc-theme .wizard-stepper .ws-circle {
    border-color: var(--theme-line-strong);
    color: var(--theme-muted);
    background: var(--theme-surface);
}

.wc-theme .wizard-stepper .ws-step.is-active .ws-circle,
.wc-theme .wizard-stepper .ws-step.active .ws-circle,
.wc-theme .wizard-stepper .ws-step.is-done .ws-circle {
    color: #fff;
    border-color: var(--theme-ink);
    background: var(--theme-ink);
}

.wc-theme .step-header {
    border-bottom-color: var(--theme-line);
}

.wc-theme .cat-quick-pill,
.wc-theme .cat-card,
.wc-theme .price-type-pill,
.wc-theme .price-preset,
.wc-theme .vpb-mode-btn {
    border-color: var(--theme-line);
    border-radius: 9px;
    color: var(--theme-ink-2);
    background: var(--theme-surface-soft);
}

.wc-theme .cat-card:hover,
.wc-theme .cat-card.is-active,
.wc-theme .cat-card.selected {
    border-color: var(--theme-mint);
    color: var(--theme-ink);
    background: var(--theme-mint-soft);
    box-shadow: 3px 4px 0 rgba(47, 142, 130, .17);
}

.wc-theme .cat-card-ico {
    color: var(--theme-accent-dark);
    background: #fff3e9;
}

.wc-theme .cat-selected,
.wc-theme .review-card,
.wc-theme .vehicle-plate-box,
.wc-theme .empty-attrs {
    border-color: var(--theme-line);
    border-radius: 10px;
    background: var(--theme-surface-soft);
}

.wc-theme .dropzone {
    border-color: var(--theme-line-strong);
    border-radius: 12px;
    color: var(--theme-ink-2);
    background: #edf1ed;
}

.wc-theme .dropzone:hover,
.wc-theme .dropzone.is-dragover {
    border-color: var(--theme-accent);
    background: #fff3e9;
}

.wc-theme .price-type-grid .btn-check:checked + .price-type-pill {
    color: #fff;
    border-color: var(--theme-ink);
    background: var(--theme-ink);
}

.wc-theme .review-card {
    border-inline-start: 5px solid var(--theme-mint);
}

/* Chat: color layer only. Existing mobile pane switching remains untouched. */
.wc-theme .chat-shell {
    border-color: var(--theme-line);
    border-radius: var(--theme-radius);
    background: var(--theme-surface);
    box-shadow: 7px 8px 0 rgba(23, 53, 62, .1);
}

.wc-theme .chat-threads {
    border-inline-end-color: var(--theme-line);
    background: var(--theme-surface-soft);
}

.wc-theme .chat-threads-head,
.wc-theme .chat-head {
    border-bottom-color: var(--theme-line);
    background: var(--theme-surface);
}

.wc-theme .chat-thread-item {
    border-radius: 9px;
    color: var(--theme-ink-2);
}

.wc-theme .chat-thread-item:hover {
    color: var(--theme-ink);
    background: #edf1ed;
}

.wc-theme .chat-thread-item.is-active {
    color: var(--theme-ink);
    border-inline-start-color: var(--theme-mint);
    background: var(--theme-mint-soft);
}

.wc-theme .chat-context {
    border-color: var(--theme-line);
    border-radius: 9px;
    background: #edf1ed;
}

.wc-theme .chat-body {
    background-color: #f1f3f0;
}

.wc-theme .chat-bubble {
    border: 1px solid var(--theme-line);
    border-radius: 12px;
    color: var(--theme-ink-2);
    background: var(--theme-surface);
    box-shadow: 2px 2px 0 rgba(23, 53, 62, .06);
}

.wc-theme .chat-msg.is-me .chat-bubble {
    color: #fff;
    border-color: var(--theme-ink);
    background: var(--theme-ink);
}

.wc-theme .chat-msg.is-me .chat-time {
    color: rgba(255,255,255,.68);
}

.wc-theme .chat-input {
    border-top-color: var(--theme-line);
    background: var(--theme-surface);
}

@media (max-width: 575.98px) {
    .wc-theme.page-register .row.g-2 > .col-6 {
        width: 100%;
    }

    .wc-theme .login-card,
    .wc-theme .wizard-card,
    .wc-theme .chat-shell {
        box-shadow: 4px 5px 0 rgba(23, 53, 62, .09);
    }
}
