/* ==============================================
   COSIONT HEART SRL — My Account / Login Styles
   Premium glassmorphism design for WooCommerce account
   ============================================== */

/* ============================================
   1. PAGE LAYOUT — Account Container
   ============================================ */
.cst-account-page {
    position: relative;
    z-index: 10;
    min-height: 100vh;
    padding: 8rem 1rem 6rem;
}
@media (min-width: 768px) {
    .cst-account-page { padding: 8rem 1.5rem 6rem; }
}

.cst-account-inner {
    max-width: 80rem;
    margin: 0 auto;
}

/* Page Header */
.cst-account-header {
    text-align: center;
    margin-bottom: 3rem;
}
.cst-account-header .cst-pill {
    display: inline-block;
    padding: 0.375rem 1rem;
    border-radius: 9999px;
    border: 1px solid rgba(197, 160, 89, 0.3);
    background: rgba(255,255,255,0.6);
    backdrop-filter: blur(8px);
    font-size: 0.625rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    color: var(--cst-gold);
    margin-bottom: 1.5rem;
    box-shadow: 0 1px 4px rgba(0,0,0,0.04);
}
.cst-account-header h1 {
    font-family: 'Playfair Display', serif;
    font-weight: 500;
    font-size: 2.5rem;
    color: var(--cst-dark);
    margin-bottom: 1rem;
}
@media (min-width: 768px) {
    .cst-account-header h1 { font-size: 3.5rem; }
}
.cst-account-header p {
    color: var(--cst-text-dim);
    font-weight: 300;
    font-size: 0.875rem;
    max-width: 36rem;
    margin: 0 auto;
    letter-spacing: 0.025em;
    line-height: 1.6;
}

/* Glass Card Container */
.cst-account-card {
    background: rgba(255,255,255,0.8);
    backdrop-filter: blur(24px);
    -webkit-backdrop-filter: blur(24px);
    border: 1px solid var(--cst-border);
    border-radius: 1.5rem;
    overflow: hidden;
    box-shadow: 0 25px 50px rgba(214, 211, 205, 0.5);
}
.cst-account-card-inner {
    padding: 1.5rem;
    position: relative;
    z-index: 10;
}
@media (min-width: 768px) {
    .cst-account-card-inner { padding: 2.5rem; }
}
@media (min-width: 1024px) {
    .cst-account-card-inner { padding: 3.5rem; }
}

/* ============================================
   2. USER WELCOME BANNER (Logged In)
   ============================================ */
.cst-user-welcome {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    border-bottom: 1px solid var(--cst-border);
    padding-bottom: 2rem;
    margin-bottom: 2.5rem;
}
.cst-user-avatar {
    width: 4rem;
    height: 4rem;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--cst-gold), #d4b06a);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Playfair Display', serif;
    font-size: 1.5rem;
    font-weight: 600;
    box-shadow: 0 4px 16px rgba(197, 160, 89, 0.3);
    flex-shrink: 0;
}
.cst-user-welcome .cst-welcome-label {
    font-size: 0.65rem;
    color: var(--cst-text-dim);
    text-transform: uppercase;
    letter-spacing: 0.15em;
    font-weight: 700;
    margin-bottom: 0.25rem;
}
.cst-user-welcome h2 {
    font-family: 'Playfair Display', serif;
    font-size: 1.75rem;
    color: var(--cst-dark);
    margin: 0;
    line-height: 1.2;
}

/* ============================================
   3. ACCOUNT LAYOUT — Sidebar + Content
   ============================================ */
.cosiont-account-styling .woocommerce {
    display: flex;
    flex-direction: column;
    gap: 2rem;
}
@media (min-width: 992px) {
    .cosiont-account-styling .woocommerce {
        flex-direction: row;
        align-items: flex-start;
        gap: 0;
    }
}

/* ============================================
   4. NAVIGATION SIDEBAR
   ============================================ */
.woocommerce-MyAccount-navigation {
    width: 100%;
    flex-shrink: 0;
}
@media (min-width: 992px) {
    .woocommerce-MyAccount-navigation {
        width: 260px;
        position: sticky;
        top: 7rem;
    }
}

.woocommerce-MyAccount-navigation ul {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0.375rem;
}
@media (min-width: 992px) {
    .woocommerce-MyAccount-navigation ul {
        flex-direction: column;
        flex-wrap: nowrap;
        gap: 0.25rem;
    }
}

.woocommerce-MyAccount-navigation li a {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    color: var(--cst-text-secondary);
    text-decoration: none;
    border-radius: 12px;
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    background: transparent;
    border: 1px solid transparent;
    white-space: nowrap;
    position: relative;
}
@media (min-width: 992px) {
    .woocommerce-MyAccount-navigation li a {
        padding: 0.875rem 1.25rem;
        font-size: 0.82rem;
    }
}

/* Nav icon placeholder (injected via JS) */
.woocommerce-MyAccount-navigation li a .cst-nav-icon {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: var(--cst-cream);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--cst-text-dim);
    font-size: 0.8rem;
    transition: all 0.3s ease;
    flex-shrink: 0;
}

.woocommerce-MyAccount-navigation li a:hover {
    background: var(--cst-cream);
    color: var(--cst-gold);
    border-color: rgba(197, 160, 89, 0.15);
}
@media (min-width: 992px) {
    .woocommerce-MyAccount-navigation li a:hover {
        transform: translateX(4px);
    }
}
.woocommerce-MyAccount-navigation li a:hover .cst-nav-icon {
    background: rgba(197, 160, 89, 0.1);
    color: var(--cst-gold);
}

/* Active State */
.woocommerce-MyAccount-navigation li.is-active a {
    background: var(--cst-dark);
    color: #fff;
    border-color: var(--cst-dark);
    box-shadow: 0 4px 16px rgba(26, 26, 26, 0.2);
}
.woocommerce-MyAccount-navigation li.is-active a .cst-nav-icon {
    background: rgba(255,255,255,0.15);
    color: var(--cst-gold);
}

/* Logout special styling */
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a {
    color: var(--cst-text-muted);
    margin-top: 0.5rem;
}
@media (min-width: 992px) {
    .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a {
        margin-top: 1rem;
        border-top: 1px solid var(--cst-border);
        border-radius: 0 0 12px 12px;
        padding-top: 1.25rem;
    }
}
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a:hover {
    color: var(--cst-error);
    background: #fef2f2;
    border-color: #fecaca;
}
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a:hover .cst-nav-icon {
    background: #fef2f2;
    color: var(--cst-error);
}

/* ============================================
   5. ACCOUNT CONTENT AREA
   ============================================ */
.woocommerce-MyAccount-content {
    flex-grow: 1;
    min-width: 0;
}
@media (min-width: 992px) {
    .woocommerce-MyAccount-content {
        padding-left: 3rem;
        border-left: 1px solid var(--cst-border);
        margin-left: 2rem;
    }
}

/* Dashboard text */
.woocommerce-MyAccount-content > p {
    color: var(--cst-text-secondary);
    font-size: 0.925rem;
    line-height: 1.7;
    margin-bottom: 1.5rem;
}
.woocommerce-MyAccount-content > p a {
    color: var(--cst-gold);
    font-weight: 600;
    text-decoration: none;
    border-bottom: 1px solid rgba(197, 160, 89, 0.3);
    transition: border-color 0.3s;
}
.woocommerce-MyAccount-content > p a:hover {
    border-bottom-color: var(--cst-gold);
}

/* ============================================
   6. SECTION HEADINGS inside content
   ============================================ */
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3 {
    font-family: 'Playfair Display', serif;
    color: var(--cst-dark);
    margin-bottom: 1.25rem;
}
.woocommerce-MyAccount-content h2 {
    font-size: 1.5rem;
    font-weight: 500;
}
.woocommerce-MyAccount-content h3 {
    font-size: 1.15rem;
    font-weight: 500;
}

/* ============================================
   7. ORDERS TABLE
   ============================================ */
.woocommerce-orders-table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid var(--cst-border);
    border-radius: 16px;
    overflow: hidden;
    font-size: 0.875rem;
}
.woocommerce-orders-table thead {
    background: var(--cst-cream);
}
.woocommerce-orders-table th {
    padding: 1rem 1.25rem;
    text-align: left;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--cst-text-dim);
    font-weight: 700;
    border-bottom: 1px solid var(--cst-border);
}
.woocommerce-orders-table td {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid rgba(231, 229, 228, 0.5);
    color: var(--cst-text-primary);
    vertical-align: middle;
}
.woocommerce-orders-table tbody tr:last-child td {
    border-bottom: none;
}
.woocommerce-orders-table tbody tr {
    transition: background 0.2s ease;
}
.woocommerce-orders-table tbody tr:hover {
    background: rgba(249, 248, 244, 0.6);
}

/* Order status badges */
.woocommerce-orders-table .woocommerce-orders-table__cell-order-status {
    font-weight: 600;
    font-size: 0.75rem;
    text-transform: capitalize;
}

/* View order button */
.woocommerce-orders-table .woocommerce-button,
.woocommerce-orders-table .button {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 1.25rem;
    background: var(--cst-dark);
    color: #fff;
    border: none;
    border-radius: 99px;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    text-decoration: none;
    transition: all 0.3s ease;
    cursor: pointer;
    white-space: nowrap;
}
.woocommerce-orders-table .woocommerce-button:hover,
.woocommerce-orders-table .button:hover {
    background: var(--cst-gold);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(197, 160, 89, 0.25);
}

/* No orders message — inherits from global-styles.css R22 notices */

/* Responsive table on mobile */
@media (max-width: 767px) {
    .woocommerce-orders-table,
    .woocommerce-orders-table thead,
    .woocommerce-orders-table tbody,
    .woocommerce-orders-table th,
    .woocommerce-orders-table td,
    .woocommerce-orders-table tr {
        display: block;
    }
    .woocommerce-orders-table thead {
        display: none;
    }
    .woocommerce-orders-table tr {
        margin-bottom: 1rem;
        border: 1px solid var(--cst-border);
        border-radius: 12px;
        overflow: hidden;
        background: #fff;
    }
    .woocommerce-orders-table td {
        padding: 0.75rem 1.25rem;
        text-align: right;
        border-bottom: 1px solid rgba(231, 229, 228, 0.3);
        position: relative;
        padding-left: 45%;
    }
    .woocommerce-orders-table td::before {
        content: attr(data-title);
        position: absolute;
        left: 1.25rem;
        font-size: 0.7rem;
        font-weight: 700;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        color: var(--cst-text-dim);
    }
}

/* ============================================
   8. ADDRESSES SECTION
   ============================================ */
.woocommerce-Addresses {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
}
@media (min-width: 768px) {
    .woocommerce-Addresses {
        grid-template-columns: 1fr 1fr;
        gap: 2rem;
    }
}

.woocommerce-Addresses .woocommerce-Address {
    background: #fff;
    border: 1px solid var(--cst-border);
    border-radius: 16px;
    padding: 2rem;
    transition: all 0.3s ease;
    position: relative;
}
.woocommerce-Addresses .woocommerce-Address:hover {
    border-color: rgba(197, 160, 89, 0.3);
    box-shadow: 0 8px 24px rgba(0,0,0,0.04);
}

.woocommerce-Address-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1.25rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--cst-border);
}
.woocommerce-Address-title h3 {
    font-family: 'Playfair Display', serif;
    font-size: 1.1rem;
    color: var(--cst-dark);
    margin: 0 !important;
}
.woocommerce-Address-title a {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.4rem 1rem;
    background: var(--cst-cream);
    color: var(--cst-text-secondary);
    border: 1px solid var(--cst-border);
    border-radius: 99px;
    font-size: 0.7rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    text-decoration: none;
    transition: all 0.3s ease;
}
.woocommerce-Address-title a:hover {
    background: var(--cst-gold);
    color: #fff;
    border-color: var(--cst-gold);
}

.woocommerce-Addresses address {
    font-style: normal;
    color: var(--cst-text-secondary);
    font-size: 0.9rem;
    line-height: 1.7;
}

/* col2-set (used for billing/shipping on edit pages) */
.woocommerce .col2-set {
    display: grid !important;
    grid-template-columns: 1fr;
    gap: 2rem;
    float: none !important;
    width: 100% !important;
}
@media (min-width: 768px) {
    .woocommerce .col2-set {
        grid-template-columns: 1fr 1fr;
    }
}
.woocommerce .col2-set .col-1,
.woocommerce .col2-set .col-2 {
    float: none !important;
    width: 100% !important;
}

/* ============================================
   9. FORMS — Inputs, Labels, Buttons
   ============================================ */
.woocommerce form .form-row {
    margin-bottom: 1.5rem;
}
.woocommerce form .form-row label {
    display: block;
    margin-bottom: 0.5rem;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    color: var(--cst-text-dim);
    font-weight: 700;
}
.woocommerce form .form-row label .required {
    color: var(--cst-gold);
}

.woocommerce input.input-text,
.woocommerce input[type="text"],
.woocommerce input[type="email"],
.woocommerce input[type="password"],
.woocommerce input[type="tel"],
.woocommerce input[type="number"],
.woocommerce textarea,
.woocommerce select,
.select2-container .select2-selection--single {
    width: 100%;
    background-color: #fff !important;
    border: 1px solid var(--cst-border) !important;
    color: var(--cst-text-primary) !important;
    padding: 0.875rem 1rem !important;
    border-radius: 12px !important;
    outline: none;
    transition: all 0.3s ease;
    font-size: 0.9rem;
    font-family: 'Inter', sans-serif;
    box-shadow: 0 1px 3px rgba(0,0,0,0.02);
    height: auto !important;
    line-height: 1.4 !important;
}

.woocommerce input.input-text:focus,
.woocommerce input[type="text"]:focus,
.woocommerce input[type="email"]:focus,
.woocommerce input[type="password"]:focus,
.woocommerce input[type="tel"]:focus,
.woocommerce textarea:focus,
.woocommerce select:focus,
.select2-container--default.select2-container--open .select2-selection--single {
    border-color: var(--cst-gold) !important;
    box-shadow: 0 0 0 4px rgba(197, 160, 89, 0.08), 0 1px 3px rgba(0,0,0,0.02) !important;
}

/* Select dropdown arrow */
.woocommerce select {
    appearance: none !important;
    -webkit-appearance: none !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%2378716c'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M19 9l-7 7-7-7'%3E%3C/path%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 1rem center !important;
    background-size: 14px !important;
    padding-right: 2.5rem !important;
}

/* Buttons */
.woocommerce button.button,
.woocommerce input[type="submit"],
.woocommerce .button {
    background-color: var(--cst-dark) !important;
    color: #fff !important;
    padding: 0.875rem 2rem !important;
    border-radius: 99px !important;
    font-size: 0.78rem !important;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-weight: 700;
    font-family: 'Inter', sans-serif;
    transition: all 0.3s ease;
    border: none !important;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    text-decoration: none;
    line-height: 1.4;
    box-shadow: 0 2px 8px rgba(0,0,0,0.08);
}
.woocommerce button.button:hover,
.woocommerce input[type="submit"]:hover,
.woocommerce .button:hover {
    background-color: var(--cst-gold) !important;
    transform: translateY(-2px);
    box-shadow: 0 8px 20px rgba(197, 160, 89, 0.25);
}
.woocommerce button.button:active,
.woocommerce .button:active {
    transform: translateY(0) scale(0.98);
}

/* ============================================
   10. LOGIN / REGISTER SPLIT (Logged Out)
   ============================================ */

/* Constrain the login card to a comfortable reading width */
.cst-account-login-state .cst-account-inner,
.cst-account-page:has(.woocommerce-login-wrapper) .cst-account-inner {
    max-width: 56rem;
}

.woocommerce-login-wrapper {
    max-width: 100%;
}

#customer_login {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
}
@media (min-width: 768px) {
    #customer_login {
        grid-template-columns: 1fr 1fr;
    }
}

#customer_login > .u-column1,
#customer_login > .u-column2,
#customer_login > div:first-child,
#customer_login > div:last-child {
    padding: 2rem 1.5rem;
}
@media (min-width: 768px) {
    #customer_login > .u-column1,
    #customer_login > div:first-child {
        padding: 2.5rem 3rem 2.5rem 1.5rem;
        border-right: 1px solid var(--cst-border);
    }
    #customer_login > .u-column2,
    #customer_login > div:last-child {
        padding: 2.5rem 1.5rem 2.5rem 3rem;
    }
}

#customer_login h2 {
    font-family: 'Playfair Display', serif;
    font-size: 1.5rem;
    font-weight: 500;
    color: var(--cst-dark);
    margin-bottom: 0.5rem;
}

/* Login form subtitle */
#customer_login .u-column1::before,
#customer_login > div:first-child::before {
    content: 'Acceseaza contul tau pentru a vedea programarile si documentele.';
    display: block;
    color: var(--cst-text-dim);
    font-size: 0.82rem;
    margin-bottom: 1.75rem;
    line-height: 1.5;
    font-weight: 300;
}
#customer_login .u-column2::before,
#customer_login > div:last-child::before {
    content: 'Creeaza un cont nou pentru a beneficia de serviciile noastre digitale.';
    display: block;
    color: var(--cst-text-dim);
    font-size: 0.82rem;
    margin-bottom: 1.75rem;
    line-height: 1.5;
    font-weight: 300;
}

/* Form rows inside login — tighter spacing */
#customer_login .form-row {
    margin-bottom: 1.25rem;
}
#customer_login .form-row label {
    margin-bottom: 0.375rem;
}

/* Login inputs — slightly smaller padding for compact feel */
#customer_login input.input-text,
#customer_login input[type="text"],
#customer_login input[type="email"],
#customer_login input[type="password"] {
    padding: 0.75rem 0.875rem !important;
    font-size: 0.875rem;
}

/* Login buttons — full width for balanced look */
#customer_login button.button,
#customer_login input[type="submit"] {
    width: 100%;
    justify-content: center;
    padding: 0.8rem 2rem !important;
    margin-top: 0.5rem;
}

/* Remember me checkbox */
.woocommerce-form__label-for-checkbox {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.85rem;
    color: var(--cst-text-secondary);
    cursor: pointer;
}
.woocommerce-form__label-for-checkbox input[type="checkbox"] {
    width: 18px !important;
    height: 18px !important;
    border-radius: 4px !important;
    border: 1px solid var(--cst-border) !important;
    accent-color: var(--cst-gold);
    cursor: pointer;
}

/* Lost password link */
.woocommerce-LostPassword {
    margin-top: 1rem;
}
.woocommerce-LostPassword a {
    color: var(--cst-text-dim);
    font-size: 0.8rem;
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: all 0.3s;
}
.woocommerce-LostPassword a:hover {
    color: var(--cst-gold);
    border-bottom-color: var(--cst-gold);
}

/* ============================================
   11. NOTICES & MESSAGES
   Styled globally via global-styles.css (R22)
   ============================================ */

/* ============================================
   12. ACCOUNT DETAILS FORM (Edit Account)
   ============================================ */
.woocommerce-EditAccountForm fieldset {
    border: 1px solid var(--cst-border);
    border-radius: 16px;
    padding: 2rem;
    margin: 2rem 0;
    background: #fff;
}
.woocommerce-EditAccountForm fieldset legend {
    font-family: 'Playfair Display', serif;
    font-size: 1rem;
    font-weight: 500;
    color: var(--cst-dark);
    padding: 0 0.75rem;
}

/* ============================================
   13. DOWNLOADS TABLE
   ============================================ */
.woocommerce-table--order-downloads {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid var(--cst-border);
    border-radius: 16px;
    overflow: hidden;
}
.woocommerce-table--order-downloads th {
    background: var(--cst-cream);
    padding: 1rem 1.25rem;
    text-align: left;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--cst-text-dim);
    font-weight: 700;
    border-bottom: 1px solid var(--cst-border);
}
.woocommerce-table--order-downloads td {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid rgba(231, 229, 228, 0.5);
    color: var(--cst-text-primary);
}

/* ============================================
   14. ORDER DETAIL VIEW
   ============================================ */
.woocommerce-order-details {
    margin-bottom: 2rem;
}
.woocommerce-order-details .woocommerce-table--order-details {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid var(--cst-border);
    border-radius: 16px;
    overflow: hidden;
}
.woocommerce-order-details .woocommerce-table--order-details th {
    background: var(--cst-cream);
    padding: 1rem 1.25rem;
    text-align: left;
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--cst-text-dim);
    font-weight: 700;
    border-bottom: 1px solid var(--cst-border);
}
.woocommerce-order-details .woocommerce-table--order-details td {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid rgba(231, 229, 228, 0.5);
    color: var(--cst-text-primary);
}
.woocommerce-order-details .woocommerce-table--order-details tfoot th,
.woocommerce-order-details .woocommerce-table--order-details tfoot td {
    background: var(--cst-cream);
    font-weight: 600;
}

/* Order again button */
.woocommerce-MyAccount-content .order-again .button {
    margin-top: 1rem;
}

/* ============================================
   15. PAYMENT METHODS
   ============================================ */
.woocommerce-MyAccount-paymentMethods {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid var(--cst-border);
    border-radius: 16px;
    overflow: hidden;
}

/* ============================================
   16. DASHBOARD QUICK ACTIONS (injected via JS)
   ============================================ */
.cst-dashboard-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
    margin-top: 2rem;
}
@media (min-width: 640px) {
    .cst-dashboard-grid {
        grid-template-columns: 1fr 1fr;
    }
}
@media (min-width: 1024px) {
    .cst-dashboard-grid {
        grid-template-columns: 1fr 1fr 1fr;
    }
}

.cst-dash-card {
    background: #fff;
    border: 1px solid var(--cst-border);
    border-radius: 16px;
    padding: 1.5rem;
    transition: all 0.3s ease;
    text-decoration: none;
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    cursor: pointer;
}
.cst-dash-card:hover {
    border-color: rgba(197, 160, 89, 0.3);
    transform: translateY(-3px);
    box-shadow: 0 12px 24px rgba(0,0,0,0.06);
}
.cst-dash-card .cst-dash-icon {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: var(--cst-cream);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--cst-gold);
    font-size: 1rem;
    flex-shrink: 0;
    transition: all 0.3s ease;
}
.cst-dash-card:hover .cst-dash-icon {
    background: rgba(197, 160, 89, 0.15);
    transform: scale(1.05);
}
.cst-dash-card .cst-dash-text h4 {
    font-size: 0.85rem;
    font-weight: 700;
    color: var(--cst-dark);
    margin-bottom: 0.25rem;
}
.cst-dash-card .cst-dash-text p {
    font-size: 0.75rem;
    color: var(--cst-text-dim);
    line-height: 1.4;
    margin: 0;
}

/* ============================================
   17. ASTRA OVERRIDES — Account-specific
   ============================================ */
.woocommerce-account .site-content,
.woocommerce-account #primary,
.woocommerce-account .ast-container,
.woocommerce-account .entry-content {
    background: var(--cst-cream) !important;
    padding: 0 !important;
    margin: 0 !important;
    max-width: 100% !important;
}

/* Remove Astra default account wrappers */
.woocommerce-account .ast-woocommerce-container {
    max-width: 100% !important;
    padding: 0 !important;
}

/* Force remove double content wrapper spacing */
.woocommerce-account .woocommerce {
    margin: 0 !important;
    padding: 0 !important;
}

/* ============================================
   18. RESPONSIVE ADJUSTMENTS
   ============================================ */
@media (max-width: 640px) {
    .cst-account-header h1 {
        font-size: 2rem;
    }
    .cst-user-welcome h2 {
        font-size: 1.35rem;
    }
    .cst-user-avatar {
        width: 3rem;
        height: 3rem;
        font-size: 1.2rem;
    }
    .woocommerce-MyAccount-navigation li a {
        padding: 0.625rem 0.875rem;
        font-size: 0.75rem;
    }
    .woocommerce-MyAccount-navigation li a .cst-nav-icon {
        width: 28px;
        height: 28px;
        font-size: 0.7rem;
    }
    #customer_login > .u-column1,
    #customer_login > .u-column2,
    #customer_login > div:first-child,
    #customer_login > div:last-child {
        padding: 1.5rem 1rem;
    }
    #customer_login h2 {
        font-size: 1.35rem;
    }
}

/* ============================================
   19. PRINT STYLES
   ============================================ */
@media print {
    .cst-account-page { padding-top: 1rem; }
    .cst-account-card { box-shadow: none; border: 1px solid #ccc; }
    .woocommerce-MyAccount-navigation { display: none; }
    #account-background-root { display: none !important; }
}
