/* ==========================================================
   00. VARIABLES
   YUPPY QUOKKA / MY ACCOUNT
========================================================== */

:root {
    --yq-brown: #5A1300;

    --yq-gold: #C5A46D;
    --yq-gold-hover: #B6945F;
    --yq-gold-dark: #B6945F;
    --yq-gold-light: #D8C29A;
    --yq-gold-deep: #A9854E;

    --yq-white: #FFFFFF;

    --yq-bg: #F7F5F0;
    --yq-cream: #F7F5F0;
    --yq-cream-light: #FBFAF8;

    --yq-border: #E2DDD9;
    --yq-border-light: #ECE7E3;

    --yq-gray: #777777;
    --yq-text: #5A514C;
    --yq-text-muted: #8A817C;
    --yq-text-gold-brown: #8B6B43;

    --yq-gold-alpha-14: rgba(197, 164, 109, 0.14);
    --yq-gold-alpha-36: rgba(197, 164, 109, 0.36);
    --yq-gold-alpha-48: rgba(197, 164, 109, 0.48);

    --yq-brown-alpha-09: rgba(90, 19, 0, 0.09);
    --yq-brown-alpha-14: rgba(90, 19, 0, 0.14);
    --yq-brown-alpha-15: rgba(90, 19, 0, 0.15);
    --yq-brown-alpha-16: rgba(90, 19, 0, 0.16);

    --yq-white-alpha-20: rgba(255, 255, 255, 0.20);
    --yq-white-alpha-35: rgba(255, 255, 255, 0.35);

    --yq-shadow: 0 8px 24px rgba(90, 19, 0, 0.08);
}


/* ==========================================================
   08. MY ACCOUNT
========================================================== */

/* アカウントラベル */
.woocommerce form .form-row label,
.woocommerce-account label {
    color: var(--yq-brown) !important;
}

/* 入力内容 */
.woocommerce-account input[type="text"],
.woocommerce-account input[type="email"],
.woocommerce-account input[type="password"] {
    color: var(--yq-brown) !important;
}

/* マイアカウントのタイル（カード）メニュー */
.woocommerce-MyAccount-content .account-item,
.woocommerce-MyAccount-content .dashboard-links a,
.my-account-links a {
    background-color: var(--yq-cream) !important;
    color: var(--yq-brown) !important;
}

.my-account-links a:hover,
.dashboard-links a:hover {
    background-color: var(--yq-brown) !important;
    color: var(--yq-cream) !important;
}

/* YUPPY QUOKKA / WooCommerce マイページ統一デザイン 最終版 */
/* 1. マイページ全体 */
body.woocommerce-account .woocommerce,
body.woocommerce-account .woocommerce-MyAccount-content {
    color: var(--yq-brown);
}

body.woocommerce-account .woocommerce-MyAccount-content h2,
body.woocommerce-account .woocommerce-MyAccount-content h3 {
    color: var(--yq-brown);
    font-weight: 600;
    letter-spacing: 0.06em;
}

body.woocommerce-account .woocommerce-MyAccount-navigation ul,
body.woocommerce-account .account-nav ul {
    margin: 0 !important;
    padding: 0 !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li,
body.woocommerce-account .account-nav li {
    position: relative !important;
    margin: 0 !important;
    padding: 0 !important;

    background: var(--yq-white) !important;
    border: 0 !important;
    border-bottom: 1px solid var(--yq-border-light) !important;

    list-style: none !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li:last-child,
body.woocommerce-account .account-nav li:last-child {
    border-bottom: 0 !important;
}

/* メニューリンク */
body.woocommerce-account .woocommerce-MyAccount-navigation li > a,
body.woocommerce-account .account-nav li > a {
    position: relative !important;

    display: flex !important;
    align-items: center !important;

    min-height: 54px !important;
    padding: 14px 18px 14px 50px !important;

    background: var(--yq-white) !important;
    border: 0 !important;
    border-left: 0 !important;

    color: var(--yq-brown) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
    letter-spacing: 0.04em !important;

    text-decoration: none !important;
    box-shadow: none !important;

    transition:
        background-color 0.2s ease,
        color 0.2s ease;
}

/* ホバー・選択中 */
body.woocommerce-account .woocommerce-MyAccount-navigation li:hover::before,
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active::before,
body.woocommerce-account .account-nav li:hover::before,
body.woocommerce-account .account-nav li.active::before,
body.woocommerce-account .account-nav li.current-menu-item::before {
    background: var(--yq-gold) !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation li:hover > a,
body.woocommerce-account .woocommerce-MyAccount-navigation li.is-active > a,
body.woocommerce-account .account-nav li:hover > a,
body.woocommerce-account .account-nav li.active > a,
body.woocommerce-account .account-nav li.current-menu-item > a {
    background: var(--yq-cream) !important;
    border: 0 !important;
    border-left: 0 !important;
    color: var(--yq-brown) !important;
}

body.woocommerce-account .yq-card-label {
    position: relative !important;
    z-index: 1 !important;
    display: block !important;
    margin: 0 0 9px !important;
    color: inherit !important;
    opacity: 0.72 !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    letter-spacing: 0.20em !important;
}

body.woocommerce-account .yq-card-title {
    position: relative !important;
    z-index: 1 !important;
    display: block !important;
    margin: 0 !important;
    color: inherit !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
    letter-spacing: 0.06em !important;
}

body.woocommerce-account .yq-card-value {
    position: relative !important;
    z-index: 1 !important;
    display: flex !important;
    align-items: baseline !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 28px 0 0 !important;
    padding: 0 !important;
    color: var(--yq-white) !important;
    font-size: 28px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    letter-spacing: 0.04em !important;
}

body.woocommerce-account .yq-point-number {
    color: var(--yq-white) !important;
}

body.woocommerce-account .yq-point-unit {
    color: var(--yq-white) !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 1 !important;
}

/* 5. 注文履歴：白カード */
body.woocommerce-account table.woocommerce-orders-table {
    width: 100% !important;

    border: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 14px !important;

    background: transparent !important;
}

body.woocommerce-account
table.woocommerce-orders-table thead th {
    padding: 10px 14px !important;

    border: 0 !important;

    color: var(--yq-text-gold-brown) !important;

    font-size: 12px !important;
    font-weight: 600 !important;
    letter-spacing: 0.06em !important;
}

/* PC注文カード */
@media screen and (min-width: 850px) {

    body.woocommerce-account
    table.woocommerce-orders-table tbody {
        display: table-row-group !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table tbody tr {
        display: table-row !important;

        background: transparent !important;
        border: 0 !important;
        border-radius: 0 !important;

        box-shadow: none !important;

        transform: none;

        transition: transform 0.25s ease;
    }

    body.woocommerce-account
    table.woocommerce-orders-table tbody th,
    body.woocommerce-account
    table.woocommerce-orders-table tbody td {
        display: table-cell !important;

        padding: 18px 14px !important;

        background: var(--yq-white) !important;

        border: 0 !important;
        border-top: 1px solid var(--yq-border) !important;
        border-bottom: 1px solid var(--yq-border) !important;
        border-radius: 0 !important;

        color: var(--yq-brown) !important;
        vertical-align: middle !important;

        box-shadow: none !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table tbody tr > :first-child {
        border-left: 1px solid var(--yq-border) !important;
        border-radius: 10px 0 0 10px !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table tbody tr > :last-child {
        border-right: 1px solid var(--yq-border) !important;
        border-radius: 0 10px 10px 0 !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table tbody tr:hover {
        transform: translateY(-2px);
    }

    body.woocommerce-account
    table.woocommerce-orders-table tbody tr:hover th,
    body.woocommerce-account
    table.woocommerce-orders-table tbody tr:hover td {
        background: var(--yq-cream-light) !important;
        border-top-color: var(--yq-gold-alpha-48) !important;
        border-bottom-color: var(--yq-gold-alpha-48) !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table tbody tr:hover > :first-child {
        border-left-color: var(--yq-gold-alpha-48) !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table tbody tr:hover > :last-child {
        border-right-color: var(--yq-gold-alpha-48) !important;
    }
}

/* 6. 注文履歴：操作ボタン */
body.woocommerce-account
.woocommerce-orders-table__cell-order-actions {
    text-align: right !important;
    vertical-align: middle !important;
    white-space: normal !important;
}

body.woocommerce-account
.woocommerce-orders-table__cell-order-actions .button,
body.woocommerce-account
.woocommerce-orders-table__cell-order-actions a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 140px !important;
    min-width: 140px !important;
    max-width: 140px !important;
    min-height: 40px !important;

    margin: 4px !important;
    padding: 8px 10px !important;

    background: var(--yq-gold) !important;
    border: 1px solid var(--yq-gold) !important;
    border-radius: 5px !important;

    color: var(--yq-white) !important;

    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.3 !important;
    letter-spacing: 0.03em !important;

    text-align: center !important;
    text-decoration: none !important;
    text-transform: none !important;
    white-space: nowrap !important;

    box-shadow: none !important;

    transition: all 0.25s ease !important;
}

body.woocommerce-account
.woocommerce-orders-table__cell-order-actions .button:hover,
body.woocommerce-account
.woocommerce-orders-table__cell-order-actions a:hover {
    background: var(--yq-brown) !important;
    border-color: var(--yq-brown) !important;
    color: var(--yq-white) !important;

    transform: translateY(-1px);

    box-shadow: 0 6px 16px var(--yq-brown-alpha-15) !important;
}

/* 7. マイページ内の共通ボタン */
body.woocommerce-account
.woocommerce-MyAccount-content a.button,
body.woocommerce-account
.woocommerce-MyAccount-content button.button,
body.woocommerce-account
.woocommerce-MyAccount-content button[type="submit"],
body.woocommerce-account
.woocommerce-MyAccount-content input[type="submit"],
body.woocommerce-account
.woocommerce-MyAccount-content .woocommerce-button {
    min-height: 42px;
    padding: 10px 24px !important;

    background: var(--yq-gold) !important;
    border: 1px solid var(--yq-gold) !important;
    border-radius: 5px !important;

    color: var(--yq-white) !important;

    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    letter-spacing: 0.07em !important;

    text-transform: none !important;
    text-decoration: none !important;

    box-shadow: none !important;

    transition: all 0.25s ease !important;
}

body.woocommerce-account
.woocommerce-MyAccount-content a.button:hover,
body.woocommerce-account
.woocommerce-MyAccount-content button.button:hover,
body.woocommerce-account
.woocommerce-MyAccount-content button[type="submit"]:hover,
body.woocommerce-account
.woocommerce-MyAccount-content input[type="submit"]:hover,
body.woocommerce-account
.woocommerce-MyAccount-content .woocommerce-button:hover {
    background: var(--yq-brown) !important;
    border-color: var(--yq-brown) !important;
    color: var(--yq-white) !important;

    transform: translateY(-1px);

    box-shadow: 0 6px 16px var(--yq-brown-alpha-14) !important;
}

/* 8. 入力欄・選択欄 */
body.woocommerce-account
.woocommerce-MyAccount-content input[type="text"],
body.woocommerce-account
.woocommerce-MyAccount-content input[type="email"],
body.woocommerce-account
.woocommerce-MyAccount-content input[type="tel"],
body.woocommerce-account
.woocommerce-MyAccount-content input[type="password"],
body.woocommerce-account
.woocommerce-MyAccount-content input[type="number"],
body.woocommerce-account
.woocommerce-MyAccount-content select,
body.woocommerce-account
.woocommerce-MyAccount-content textarea {
    width: 100%;
    min-height: 46px;
    padding: 10px 14px;

    background: var(--yq-white) !important;
    border: 1px solid var(--yq-gold-alpha-36) !important;
    border-radius: 6px !important;

    color: var(--yq-brown) !important;

    font-size: 14px;

    box-shadow: none !important;

    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease,
        background-color 0.2s ease;
}

body.woocommerce-account
.woocommerce-MyAccount-content textarea {
    min-height: 120px;
    resize: vertical;
}

body.woocommerce-account
.woocommerce-MyAccount-content input:focus,
body.woocommerce-account
.woocommerce-MyAccount-content select:focus,
body.woocommerce-account
.woocommerce-MyAccount-content textarea:focus {
    background: var(--yq-cream-light) !important;
    border-color: var(--yq-gold) !important;

    box-shadow:
        0 0 0 3px var(--yq-gold-alpha-14) !important;

    outline: 0 !important;
}

body.woocommerce-account
.woocommerce-MyAccount-content label {
    color: var(--yq-brown);

    font-size: 13px;
    font-weight: 600;
    letter-spacing: 0.04em;
}

/* 9. 住所一覧・住所編集 */
body.woocommerce-account .woocommerce-Addresses {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}

body.woocommerce-account .woocommerce-Address {
    width: 100% !important;
    float: none !important;

    margin: 0 !important;
    padding: 24px !important;

    background: var(--yq-white);
    border: 1px solid var(--yq-border);
    border-radius: 10px;

    box-shadow: var(--yq-shadow);

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
}

body.woocommerce-account .woocommerce-Address:hover {
    transform: translateY(-2px);

    box-shadow:
        0 14px 32px var(--yq-brown-alpha-09);
}

body.woocommerce-account .woocommerce-Address-title {
    display: flex;
    align-items: center;
    justify-content: space-between;

    margin-bottom: 15px;
    padding-bottom: 15px;

    border-bottom: 1px solid var(--yq-border-light);
}

body.woocommerce-account .woocommerce-Address-title h3 {
    margin: 0;

    color: var(--yq-brown);

    font-size: 17px;
    font-weight: 600;
}

body.woocommerce-account .woocommerce-Address address {
    margin: 0;

    color: var(--yq-text);

    font-size: 14px;
    font-style: normal;
    line-height: 1.9;
}

body.woocommerce-account .woocommerce-EditAccountForm,
body.woocommerce-account form.woocommerce-address-fields {
    padding: 26px;

    background: var(--yq-white);
    border: 1px solid var(--yq-border);
    border-radius: 10px;

    box-shadow: var(--yq-shadow);
}

/* 10. ログアウト通知ボタン */
body.woocommerce-account .woocommerce-info a,
body.woocommerce-account .woocommerce-message a,
body.woocommerce-account .message-container a {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;

    margin-left: 15px !important;
    padding: 10px 22px !important;

    background: var(--yq-gold) !important;
    border: 1px solid var(--yq-gold) !important;
    border-radius: 5px !important;

    color: var(--yq-white) !important;

    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    letter-spacing: 0.05em;

    text-decoration: none !important;

    transition: all 0.25s ease !important;
}

body.woocommerce-account .woocommerce-info a:hover,
body.woocommerce-account .woocommerce-message a:hover,
body.woocommerce-account .message-container a:hover {
    background: var(--yq-brown) !important;
    border-color: var(--yq-brown) !important;
    color: var(--yq-white) !important;

    transform: translateY(-1px);

    box-shadow:
        0 6px 16px var(--yq-brown-alpha-15) !important;
}

/* 小さいスマートフォン */
@media screen and (max-width: 420px) {

    body.woocommerce-account
    .woocommerce-orders-table__cell-order-actions {
        grid-template-columns: 1fr !important;
    }
}

#my-account-nav.account-nav > li {
    position: relative !important;
    display: block !important;

    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;

    background: var(--yq-white) !important;
    border: 0 !important;
    border-bottom: 1px solid var(--yq-border-light) !important;

    list-style: none !important;
}

#my-account-nav.account-nav > li:last-child {
    border-bottom: 0 !important;
}

#my-account-nav.account-nav > li > a {
    position: relative !important;
    display: flex !important;
    align-items: center !important;

    width: 100% !important;
    min-height: 54px !important;
    margin: 0 !important;
    padding: 14px 18px !important;

    background: var(--yq-white) !important;
    border: 0 !important;

    color: var(--yq-text) !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
    letter-spacing: 0.04em !important;

    text-decoration: none !important;
    text-transform: none !important;

    box-shadow: none !important;

    transition:
        background-color 0.2s ease,
        color 0.2s ease;
}

/* Flatsomeのnav-line装飾を解除 */
#my-account-nav.nav-line > li::before,
#my-account-nav.nav-line > li::after,
#my-account-nav.nav-line > li > a::before,
#my-account-nav.nav-line > li > a::after {
    display: none !important;
    content: none !important;
}

/* 選択中・ホバー */
#my-account-nav.account-nav > li.active > a,
#my-account-nav.account-nav > li.is-active > a,
#my-account-nav.account-nav > li:hover > a {
    background: var(--yq-cream) !important;
    color: var(--yq-brown) !important;
}

#my-account-nav.account-nav > li.active > a,
#my-account-nav.account-nav > li.is-active > a {
    font-weight: 700 !important;
}

/* 選択中の右端ゴールド線 */
#my-account-nav.account-nav > li.active > a::after,
#my-account-nav.account-nav > li.is-active > a::after {
    content: "" !important;

    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;

    display: block !important;
    width: 3px !important;
    height: auto !important;

    background: var(--yq-gold) !important;
}

/* 13. 注文詳細：請求先住所・お届け先住所 */
body.woocommerce-account
.woocommerce-customer-details {
    margin-top: 32px !important;
}

body.woocommerce-account
.woocommerce-customer-details > h2 {
    margin: 0 0 18px !important;

    color: var(--yq-brown) !important;
    font-size: 20px !important;
    font-weight: 600 !important;
    letter-spacing: 0.06em !important;
}

body.woocommerce-account
.woocommerce-customer-details
.woocommerce-columns--addresses {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;

    margin: 0 !important;
}

body.woocommerce-account
.woocommerce-customer-details
.woocommerce-column {
    width: 100% !important;
    float: none !important;

    margin: 0 !important;
    padding: 24px !important;

    background: var(--yq-white) !important;
    border: 1px solid var(--yq-border) !important;
    border-radius: 10px !important;

    box-shadow: var(--yq-shadow) !important;
}

body.woocommerce-account
.woocommerce-customer-details
.woocommerce-column__title {
    margin: 0 0 16px !important;
    padding: 0 0 14px !important;

    border-bottom: 1px solid var(--yq-border-light) !important;

    color: var(--yq-brown) !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 1.45 !important;
    letter-spacing: 0.05em !important;
}

body.woocommerce-account
.woocommerce-customer-details
address {
    margin: 0 !important;
    padding: 0 !important;

    color: var(--yq-text) !important;
    font-size: 14px !important;
    font-style: normal !important;
    font-weight: 400 !important;
    line-height: 1.9 !important;
    letter-spacing: 0.02em !important;
}

body.woocommerce-account
.woocommerce-customer-details
address p {
    margin: 10px 0 0 !important;
}

body.woocommerce-account
.woocommerce-customer-details
.woocommerce-customer-details--phone,
body.woocommerce-account
.woocommerce-customer-details
.woocommerce-customer-details--email {
    position: relative !important;

    margin: 10px 0 0 !important;
    padding-left: 24px !important;

    color: var(--yq-brown) !important;
    font-style: normal !important;
}

body.woocommerce-account
.woocommerce-customer-details
.woocommerce-customer-details--phone::before,
body.woocommerce-account
.woocommerce-customer-details
.woocommerce-customer-details--email::before {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;

    color: var(--yq-gold) !important;
}

body.woocommerce-account
.woocommerce-customer-details
.woocommerce-customer-details--phone::before {
    content: "TEL" !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
}

body.woocommerce-account
.woocommerce-customer-details
.woocommerce-customer-details--email::before {
    content: "✉" !important;
    font-size: 13px !important;
}

/* 15. スマートフォン：注文履歴を1列カードに整形 */
@media screen and (max-width: 849px) {

    body.woocommerce-account
    table.woocommerce-orders-table {
        display: block !important;
        width: 100% !important;
        border: 0 !important;
        border-collapse: separate !important;
        border-spacing: 0 !important;
        background: transparent !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table thead {
        display: none !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table tbody {
        display: block !important;
        width: 100% !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table tbody tr {
        display: block !important;
        width: 100% !important;
        margin: 0 0 18px !important;
        padding: 14px 16px !important;
        background: var(--yq-white) !important;
        border: 1px solid var(--yq-border) !important;
        border-radius: 10px !important;
        box-shadow: var(--yq-shadow) !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table tbody th,
    body.woocommerce-account
    table.woocommerce-orders-table tbody td {
        display: grid !important;
        grid-template-columns: minmax(82px, 34%) minmax(0, 1fr) !important;
        align-items: center !important;
        column-gap: 12px !important;
        width: 100% !important;
        min-height: 48px !important;
        margin: 0 !important;
        padding: 10px 0 !important;
        background: transparent !important;
        border: 0 !important;
        border-bottom: 1px solid var(--yq-border-light) !important;
        border-radius: 0 !important;
        color: var(--yq-brown) !important;
        text-align: left !important;
        vertical-align: middle !important;
        box-shadow: none !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table tbody th::before,
    body.woocommerce-account
    table.woocommerce-orders-table tbody td::before {
        content: attr(data-title) !important;
        display: block !important;
        color: var(--yq-text-gold-brown) !important;
        font-size: 12px !important;
        font-weight: 600 !important;
        line-height: 1.45 !important;
        letter-spacing: 0.04em !important;
        text-transform: none !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table
    .woocommerce-orders-table__cell-order-number,
    body.woocommerce-account
    table.woocommerce-orders-table
    .woocommerce-orders-table__cell-order-number a {
        color: var(--yq-brown) !important;
        font-size: 16px !important;
        font-weight: 700 !important;
        text-decoration: none !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table
    .woocommerce-orders-table__cell-order-total .woocommerce-Price-amount {
        color: var(--yq-brown) !important;
        font-weight: 700 !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table
    .woocommerce-orders-table__cell-order-actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 8px !important;
        width: 100% !important;
        min-height: 0 !important;
        padding: 14px 0 0 !important;
        border-bottom: 0 !important;
        text-align: left !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table
    .woocommerce-orders-table__cell-order-actions::before {
        display: none !important;
        content: none !important;
    }

    body.woocommerce-account
    .woocommerce-orders-table__cell-order-actions .button,
    body.woocommerce-account
    .woocommerce-orders-table__cell-order-actions a {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        min-height: 44px !important;
        margin: 0 !important;
        padding: 10px 12px !important;
        border-radius: 5px !important;
        font-size: 13px !important;
        line-height: 1.3 !important;
        white-space: normal !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table tbody tr > :last-child {
        border-bottom: 0 !important;
    }
}

@media screen and (max-width: 420px) {

    body.woocommerce-account
    table.woocommerce-orders-table tbody tr {
        padding: 12px 14px !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table tbody th,
    body.woocommerce-account
    table.woocommerce-orders-table tbody td {
        grid-template-columns: 76px minmax(0, 1fr) !important;
        column-gap: 10px !important;
    }
}

/* アカウント詳細の入力文字色 */
.woocommerce-EditAccountForm input[type="text"],
.woocommerce-EditAccountForm input[type="email"],
.woocommerce-EditAccountForm input[type="tel"],
.woocommerce-EditAccountForm input[type="password"]{
    color:var(--yq-brown) !important;
}

/* ==================================================
   09. ポイント・会員ランク
   WP Swingsポイントページ
================================================== */

/* YUPPY QUOKKA / ポイントページ完成版 / 実際のWP Swings HTML構造に対応 */
/* 1. カラー設定 */
/* 2. 保有ポイント・会員ランクカード */
body.woocommerce-account .yq-account-status {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 20px !important;
    width: 100% !important;
    margin: 0 0 32px !important;
}

body.woocommerce-account .yq-points-card,
body.woocommerce-account .yq-rank-card {
    box-sizing: border-box !important;
}

body.woocommerce-account .yq-points-card {
    position: relative !important;
    overflow: hidden !important;
    min-height: 190px !important;
    padding: 28px 30px !important;
    background:
        linear-gradient(
            135deg,
            var(--yq-gold-light) 0%,
            var(--yq-gold) 48%,
            var(--yq-gold-deep) 100%
        ) !important;
    border: 1px solid var(--yq-white-alpha-35) !important;
    border-radius: 14px !important;
    color: var(--yq-white) !important;
    box-shadow: 0 14px 35px var(--yq-brown-alpha-14) !important;
}

body.woocommerce-account .yq-points-card::before {
    content: "" !important;
    position: absolute !important;
    top: -75px !important;
    right: -65px !important;
    width: 190px !important;
    height: 190px !important;
    border: 1px solid var(--yq-white-alpha-20) !important;
    border-radius: 50% !important;
}

body.woocommerce-account .yq-points-card::after {
    content: "" !important;
    position: absolute !important;
    right: 25px !important;
    bottom: 18px !important;
    width: 150px !important;
    height: 65px !important;
    background:
        url("https://www.yuppyquokka.co.jp/wp-content/uploads/2026/07/yqface.svg")
        center / contain no-repeat !important;
    opacity: 0.36 !important;
    pointer-events: none !important;
}

body.woocommerce-account .yq-rank-card {
    position: relative !important;
    min-height: 190px !important;
    padding: 28px 30px !important;
    background: var(--yq-white) !important;
    border: 1px solid var(--yq-border) !important;
    border-radius: 14px !important;
    box-shadow: var(--yq-shadow) !important;
}

body.woocommerce-account .yq-rank-value {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 170px !important;
    min-height: 44px !important;
    margin: 28px 0 0 !important;
    padding: 8px 24px !important;
    background: var(--yq-cream) !important;
    border: 1px solid var(--yq-gold) !important;
    border-radius: 30px !important;
    color: var(--yq-brown) !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    letter-spacing: 0.06em !important;
}

body.woocommerce-account .yq-rank-value::before {
    content: "★" !important;
    margin-right: 8px !important;
    color: var(--yq-gold) !important;
}

/* 3. プラグイン標準ポイント表示 / 独自カードと重複する部分を非表示 */
body.woocommerce-account
.wps_wpr_points_only.wps_wpr_show_points_on_account_page {
    display: none !important;
}

/* 4. ポイントログ */
body.woocommerce-account .wps_wpr_view_log,
body.woocommerce-account .wps_wpr_view_log_wrapper {
    margin: 0 0 32px !important;
    padding: 18px 0 !important;
    border-top: 1px solid var(--yq-border-light) !important;
    border-bottom: 1px solid var(--yq-border-light) !important;
    text-align: right !important;
}

body.woocommerce-account .wps_wpr_view_log a,
body.woocommerce-account .wps_wpr_view_log_wrapper a {
    color: var(--yq-brown) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
    letter-spacing: 0.04em !important;
    text-decoration: none !important;
}

body.woocommerce-account .wps_wpr_view_log a:hover,
body.woocommerce-account .wps_wpr_view_log_wrapper a:hover {
    color: var(--yq-gold-dark) !important;
}

/* 5. ポイント獲得方法 */
body.woocommerce-account .wps_ways_to_gain_points_section {
    margin: 0 0 32px !important;
}

body.woocommerce-account
.wps_ways_to_gain_points_section
> .wps_wpr_heading {
    margin: 0 0 18px !important;
    color: var(--yq-brown) !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
    letter-spacing: 0.04em !important;
}

body.woocommerce-account
.wps_ways_to_gain_points_section
.wps_wpr_each_section_wrap {
    margin: 0 !important;
}

body.woocommerce-account
.wps_ways_to_gain_points_section
fieldset.wps_wpr_each_section {
    display: block !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 26px 28px !important;
    background: var(--yq-white) !important;
    border: 1px solid var(--yq-border) !important;
    border-radius: 10px !important;
    color: var(--yq-text) !important;
    font-size: 13px !important;
    font-weight: 400 !important;
    line-height: 1.9 !important;
    letter-spacing: 0.02em !important;
    white-space: pre-line !important;
    box-shadow: var(--yq-shadow) !important;
}

/* 6. 会員リスト */
body.woocommerce-account
.wps_wpr_membership_list_main_wrap {
    margin: 0 0 32px !important;
}

body.woocommerce-account
.wps_wpr_membership_list_main_wrap
> .wps_wpr_heading {
    margin: 0 0 18px !important;
    color: var(--yq-brown) !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
    letter-spacing: 0.04em !important;
}

body.woocommerce-account
.wps_wpr_membership_with_img-wrap {
    padding: 26px 28px !important;
    background: var(--yq-white) !important;
    border: 1px solid var(--yq-border) !important;
    border-radius: 10px !important;
    box-shadow: var(--yq-shadow) !important;
}

body.woocommerce-account
table.wps_wpr_membership_with_img {
    width: 100% !important;
    margin: 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
}

body.woocommerce-account
table.wps_wpr_membership_with_img th {
    padding: 13px 15px !important;
    background: var(--yq-cream) !important;
    border: 0 !important;
    border-bottom: 1px solid var(--yq-border) !important;
    color: var(--yq-brown) !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
    letter-spacing: 0.03em !important;
    text-align: left !important;
    vertical-align: middle !important;
    white-space: nowrap !important;
}

/* 会員資格の有効期限だけ右揃え */
body.woocommerce-account
table.wps_wpr_membership_with_img
th.wps-wpr-points-expiry{
    text-align:right !important;
}

body.woocommerce-account
table.wps_wpr_membership_with_img
td:nth-child(3){
    text-align:right !important;
}

body.woocommerce-account
table.wps_wpr_membership_with_img td {
    padding: 15px !important;
    background: var(--yq-white) !important;
    border: 0 !important;
    border-bottom: 1px solid var(--yq-border-light) !important;
    color: var(--yq-text) !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
    vertical-align: middle !important;
}

body.woocommerce-account
table.wps_wpr_membership_with_img
tbody tr:last-child td {
    border-bottom: 0 !important;
}

body.woocommerce-account
table.wps_wpr_membership_with_img
td:first-child {
    color: var(--yq-text) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
}

body.woocommerce-account
table.wps_wpr_membership_with_img
td:nth-child(2) {
    color: var(--yq-brown) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
}

body.woocommerce-account
table.wps_wpr_membership_with_img
td:nth-child(3) {
    color: var(--yq-text-muted) !important;
    font-size: 14px !important;
}

body.woocommerce-account
a.wps_wpr_level_benefits {
    color: var(--yq-brown) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
    text-decoration: none !important;
}

body.woocommerce-account
a.wps_wpr_level_benefits:hover {
    color: var(--yq-gold-dark) !important;
}

/* 7. 会員特典ポップアップ */
/* ポップアップ本体 */
body.woocommerce-account
.wps_wpr_popup_content_section{
    background: var(--yq-white) !important;
    border: 1px solid var(--yq-border) !important;
    border-radius: 12px !important;
    box-shadow: 0 18px 45px var(--yq-brown-alpha-16) !important;
    overflow: hidden;
}

/* 上部（紫色部分） */
body.woocommerce-account
.wps_wpr_popup_notice_section{
    background: var(--yq-gold) !important;
    border-bottom: 1px solid var(--yq-border) !important;
}

/* 上部コンテンツ */
body.woocommerce-account
.wps_wpr_popup_notice_section_in{
    color: var(--yq-brown) !important;
}

/* タイトル */
body.woocommerce-account
.wps_wpr_popup_content
.wps_wpr_intro_text{
    color: var(--yq-brown) !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.6 !important;
}

/* 説明文 */
body.woocommerce-account
.wps_wpr_popup_content
.wps_wpr_messages{
    color: var(--yq-cream) !important;
    font-size: 14px !important;
    line-height: 1.8 !important;
}

/* 金額 */
body.woocommerce-account
.wps_wpr_popup_content
.woocommerce-Price-amount,
body.woocommerce-account
.wps_wpr_popup_content
.woocommerce-Price-currencySymbol{
    color: var(--yq-brown) !important;
    font-weight: 700 !important;
}

/* ボーナスポイント */
body.woocommerce-account
.wps_wpr_mems_rewards{
    margin: 0 !important;
    padding: 24px 28px !important;

    background: var(--yq-white) !important;

    color: var(--yq-brown) !important;

    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.7 !important;

    text-align: center;
}

/* 閉じるボタン */
body.woocommerce-account
.wps_wpr_close a{
    background: var(--yq-brown) !important;
    border-radius: 50%;
}

/* 8. スマートフォン */
@media screen and (max-width: 849px) {

    body.woocommerce-account .yq-account-status {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
        margin-bottom: 26px !important;
    }

    body.woocommerce-account .yq-points-card,
    body.woocommerce-account .yq-rank-card {
        min-height: 165px !important;
        padding: 24px !important;
    }

    body.woocommerce-account .yq-card-value {
        margin-top: 24px !important;
        font-size: 24px !important;
    }

    body.woocommerce-account .yq-point-unit {
        font-size: 16px !important;
    }

    body.woocommerce-account .yq-rank-value {
        min-width: 150px !important;
        min-height: 42px !important;
        margin-top: 24px !important;
        padding: 8px 20px !important;
        font-size: 15px !important;
    }

    body.woocommerce-account .wps_wpr_view_log,
    body.woocommerce-account .wps_wpr_view_log_wrapper {
        margin-bottom: 26px !important;
        padding: 15px 0 !important;
        text-align: left !important;
    }

    body.woocommerce-account
    .wps_ways_to_gain_points_section {
        margin-bottom: 28px !important;
    }

    body.woocommerce-account
    .wps_ways_to_gain_points_section
    > .wps_wpr_heading {
        margin-bottom: 14px !important;
        font-size: 16px !important;
    }

    body.woocommerce-account
    .wps_ways_to_gain_points_section
    fieldset.wps_wpr_each_section {
        padding: 20px 16px !important;
        border-radius: 8px !important;
        font-size: 11px !important;
        line-height: 1.85 !important;
    }

    body.woocommerce-account
    .wps_wpr_membership_list_main_wrap {
        margin-bottom: 28px !important;
    }

    body.woocommerce-account
    .wps_wpr_membership_list_main_wrap
    > .wps_wpr_heading {
        margin-bottom: 14px !important;
        font-size: 16px !important;
    }

    body.woocommerce-account
    .wps_wpr_membership_with_img-wrap {
        overflow-x: auto !important;
        padding: 16px !important;
        border-radius: 8px !important;
        -webkit-overflow-scrolling: touch;
    }

    body.woocommerce-account
    table.wps_wpr_membership_with_img {
        min-width: 600px !important;
    }

    body.woocommerce-account
    table.wps_wpr_membership_with_img th {
        padding: 12px !important;
        font-size: 11px !important;
    }

    body.woocommerce-account
    table.wps_wpr_membership_with_img td {
        padding: 13px 12px !important;
        font-size: 11px !important;
    }

    body.woocommerce-account
    table.wps_wpr_membership_with_img td:first-child,
    body.woocommerce-account
    table.wps_wpr_membership_with_img td:nth-child(2) {
        font-size: 11px !important;
    }

    body.woocommerce-account
    a.wps_wpr_level_benefits {
        font-size: 12px !important;
    }

	/* スマホでも有効期限だけ右揃え */
body.woocommerce-account
table.wps_wpr_membership_with_img
th.wps-wpr-points-expiry{
    text-align:right !important;
}

body.woocommerce-account
table.wps_wpr_membership_with_img
td:nth-child(3){
    text-align:right !important;
}

    body.woocommerce-account
    .wps_wpr_popup_content_section {
        width: calc(100% - 30px) !important;
        max-width: 520px !important;
    }

    body.woocommerce-account
    .wps_wpr_popup_content
    .wps_wpr_intro_text {
        font-size: 11px !important;
    }

    body.woocommerce-account
    .wps_wpr_popup_content
    .wps_wpr_messages,
    body.woocommerce-account
    .wps_wpr_mems_rewards {
        font-size: 11px !important;
    }
}

/* 11. スマートフォン */
@media screen and (max-width: 849px) {

    body.woocommerce-account .yq-account-status,
    body.woocommerce-account .woocommerce-Addresses {
        grid-template-columns: 1fr;
    }

    body.woocommerce-account .yq-points-card,
    body.woocommerce-account .yq-rank-card {
        min-height: 165px;
        padding: 24px;
    }


    /* 左メニュー */
    body.woocommerce-account .woocommerce-MyAccount-navigation li > a,
    body.woocommerce-account .account-nav li > a {
        min-height: 50px !important;
        padding: 13px 15px 13px 46px !important;
        font-size: 13px !important;
    }

    body.woocommerce-account
    .woocommerce-MyAccount-navigation li > a::before,
    body.woocommerce-account
    .account-nav li > a::before {
        left: 17px !important;
        font-size: 15px !important;
    }


    /* 注文履歴カード */
    body.woocommerce-account
    table.woocommerce-orders-table {
        border-spacing: 0 !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table tbody tr {
        display: block !important;

        margin-bottom: 18px !important;
        padding: 8px 14px 14px !important;

        background: var(--yq-white) !important;
        border: 1px solid var(--yq-border) !important;
        border-radius: 10px !important;

        box-shadow: var(--yq-shadow) !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table tbody td {
        display: block !important;
        width: 100% !important;

        padding: 11px 0 !important;

        background: transparent !important;

        border: 0 !important;
        border-bottom: 1px solid var(--yq-border-light) !important;
        border-radius: 0 !important;

        box-shadow: none !important;
    }

    body.woocommerce-account
    table.woocommerce-orders-table tbody td:last-child {
        border-bottom: 0 !important;
    }


    /* 操作ボタン */
    body.woocommerce-account
    .woocommerce-orders-table__cell-order-actions {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;

        width: 100% !important;
        padding-top: 12px !important;

        text-align: initial !important;
    }

    body.woocommerce-account
    .woocommerce-orders-table__cell-order-actions .button,
    body.woocommerce-account
    .woocommerce-orders-table__cell-order-actions a {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;

        margin: 0 !important;
        padding: 8px !important;

        font-size: 12px !important;
    }


    /* お気に入り一覧 */
    body.woocommerce-account .wishlist_table,
    body.woocommerce-account .wishlist_table tbody,
    body.woocommerce-account .wishlist_table tr,
    body.woocommerce-account .wishlist_table td {
        display: block;
        width: 100%;
    }

    body.woocommerce-account .wishlist_table thead {
        display: none;
    }

    body.woocommerce-account .wishlist_table tr {
        margin-bottom: 18px;
        padding: 15px;

        background: var(--yq-white);
        border: 1px solid var(--yq-border);
        border-radius: 10px;

        box-shadow: var(--yq-shadow);
    }

    body.woocommerce-account .wishlist_table td {
        padding: 10px 0 !important;

        border-bottom:
            1px solid var(--yq-border-light) !important;
    }

    body.woocommerce-account .wishlist_table td:last-child {
        border-bottom: 0 !important;
    }


    /* 編集フォーム */
    body.woocommerce-account .woocommerce-EditAccountForm,
    body.woocommerce-account form.woocommerce-address-fields {
        padding: 20px 16px;
    }


    /* ログアウト通知 */
    body.woocommerce-account .woocommerce-info a,
    body.woocommerce-account .woocommerce-message a,
    body.woocommerce-account .message-container a {
        display: flex !important;

        width: fit-content;

        margin: 12px 0 0 !important;
    }
}

/* ==================================================
   10. お気に入り
   Wishlist一覧・ボタン・レスポンシブ
================================================== */

/* 2. 左メニュー / 通常マイページ・お気に入り画面の両方に対応 */
body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .account-nav {
    overflow: hidden !important;
    background: var(--yq-white) !important;
    border: 1px solid var(--yq-border) !important;
    border-radius: 10px !important;
    box-shadow: var(--yq-shadow) !important;
}

/* 3. お気に入り画面 */
/* お気に入り一覧 */
body.woocommerce-account .wishlist_table {
    width: 100% !important;

    border: 0 !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;

    background: transparent !important;
}

body.woocommerce-account .wishlist_table th {
    padding: 13px 15px !important;

    background: var(--yq-cream) !important;
    border: 0 !important;
    border-bottom: 1px solid var(--yq-border) !important;

    color: var(--yq-brown) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.05em !important;
}

body.woocommerce-account .wishlist_table td {
    padding: 16px 15px !important;

    background: var(--yq-white) !important;
    border: 0 !important;
    border-bottom: 1px solid var(--yq-border-light) !important;

    color: var(--yq-brown) !important;
    vertical-align: middle !important;
}

body.woocommerce-account .wishlist_table tbody tr {
    transition:
        background-color 0.2s ease,
        box-shadow 0.2s ease;
}

body.woocommerce-account .wishlist_table tbody tr:hover td {
    background: var(--yq-cream-light) !important;
}

body.woocommerce-account .wishlist_table img {
    border-radius: 5px;
}

body.woocommerce-account .wishlist_table .product-name a {
    color: var(--yq-brown) !important;
    font-weight: 500 !important;
    text-decoration: none !important;
}

body.woocommerce-account .wishlist_table .product-name a:hover {
    color: var(--yq-gold-dark) !important;
}

/* 12. お気に入りページの左メニュー / /wishlist/ では body.woocommerce-account が付かないため、 / #my-account-nav を直接指定 */
#my-account-nav.account-nav {
    display: block !important;
    overflow: hidden !important;

    width: 100% !important;
    margin: 24px 0 0 !important;
    padding: 0 !important;

    background: var(--yq-white) !important;
    border: 1px solid var(--yq-border) !important;
    border-radius: 10px !important;

    box-shadow: var(--yq-shadow) !important;
}

/* お気に入りページで誤選択されるダッシュボードを解除 */
#my-account-nav:has(> li.wishlist-account-element.active)
> li.woocommerce-MyAccount-navigation-link--dashboard > a {
    background: var(--yq-white) !important;
    color: var(--yq-text) !important;
    font-weight: 500 !important;
}

#my-account-nav:has(> li.wishlist-account-element.active)
> li.woocommerce-MyAccount-navigation-link--dashboard > a::after {
    display: none !important;
    content: none !important;
}

/* 14. 住所・お気に入りページのレスポンシブ */
@media screen and (max-width: 849px) {

    #my-account-nav.account-nav > li > a {
        min-height: 50px !important;
        padding: 13px 16px !important;
        font-size: 13px !important;
    }

    body.woocommerce-account
    .woocommerce-customer-details
    .woocommerce-columns--addresses {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }

    body.woocommerce-account
    .woocommerce-customer-details
    .woocommerce-column {
        padding: 20px 18px !important;
    }

    body.woocommerce-account
    .woocommerce-customer-details
    .woocommerce-column__title {
        font-size: 17px !important;
    }
}

/* 16. お気に入り：保守用統合版 */
/* 16-1. PC項目名 */
.wishlist_table thead th.product-price,
.wishlist_table thead th.product-stock-status {
    font-size: 0 !important;
}

.wishlist_table thead th.product-price::after {
    content: "商品単価";
    font-size: 13px;
}

.wishlist_table thead th.product-stock-status::after {
    content: "在庫状況";
    font-size: 13px;
}

@media screen and (min-width: 850px) {

    .wishlist_table thead th.product-stock-status,
    .wishlist_table tbody td.product-stock-status {
        width: 120px !important;
        min-width: 120px !important;

        white-space: nowrap !important;
        word-break: keep-all !important;
    }
}

/* 16-2. PC・スマホ共通ボタン */
.wishlist_table .product-add-to-cart a,
.wishlist_table .product-add-to-cart button,
.wishlist_table .product-remove a.remove_from_wishlist {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 200px !important;
    min-width: 200px !important;
    max-width: 200px !important;
    min-height: 46px !important;

    margin: 4px 0 !important;
    padding: 10px 14px !important;

    background: var(--yq-gold) !important;
    border: 1px solid var(--yq-gold) !important;
    border-radius: 6px !important;

    color: var(--yq-white) !important;

    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    letter-spacing: 0.03em !important;

    text-align: center !important;
    text-decoration: none !important;
    text-transform: none !important;

    box-shadow: none !important;

    transition:
        background-color 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease;
}

.wishlist_table .product-add-to-cart a:hover,
.wishlist_table .product-add-to-cart button:hover,
.wishlist_table .product-remove a.remove_from_wishlist:hover {
    background: var(--yq-brown) !important;
    border-color: var(--yq-brown) !important;
    color: var(--yq-white) !important;
}

/* 16-3. 削除ボタン / 「削除」を一度だけ表示 */
.wishlist_table .product-remove {
    position: static !important;

    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;

    box-shadow: none !important;
}

.wishlist_table .product-remove::before,
.wishlist_table .product-remove::after {
    display: none !important;
    content: none !important;
}

.wishlist_table .product-remove a.remove_from_wishlist {
    position: static !important;

    overflow: hidden !important;

    color: transparent !important;
    font-size: 0 !important;

    outline: 0 !important;
}

.wishlist_table .product-remove a.remove_from_wishlist i,
.wishlist_table .product-remove a.remove_from_wishlist .fa,
.wishlist_table .product-remove a.remove_from_wishlist .fa-trash {
    display: none !important;
}

.wishlist_table .product-remove a.remove_from_wishlist::after {
    display: none !important;
    content: none !important;
}

.wishlist_table .product-remove a.remove_from_wishlist::before {
    content: "削除" !important;

    position: static !important;

    display: block !important;

    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;

    color: var(--yq-white) !important;

    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    letter-spacing: 0.03em !important;

    box-shadow: none !important;
}

/* 16-4. スマホ商品表示 / 実際の item-wrapper 構造に対応 */
@media screen and (max-width: 849px) {

    .wishlist_table .item-wrapper {
        display: block !important;
        clear: both !important;

        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .wishlist_table .item-wrapper .product-thumbnail {
        float: none !important;

        width: 100% !important;
        margin: 0 0 12px !important;

        text-align: center !important;
    }

    .wishlist_table .item-wrapper .product-thumbnail img {
        width: auto !important;
        max-width: 110px !important;
        height: auto !important;

        margin: 0 auto !important;
    }

    .wishlist_table .item-wrapper .item-details {
        width: 100% !important;
        margin: 0 !important;
    }

    .wishlist_table .item-wrapper .product-name {
        margin: 0 0 12px !important;
    }

    .wishlist_table .item-wrapper .product-name h3 {
        margin: 0 !important;

        font-size: 15px !important;
        line-height: 1.5 !important;
    }

    /* 商品単価 */
    .wishlist_table .item-details-table {
        width: 100% !important;
        margin: 0 !important;

        border: 1px solid var(--yq-border) !important;
        border-collapse: separate !important;
        border-spacing: 0 !important;
        border-radius: 7px 7px 0 0 !important;

        overflow: hidden !important;
    }

    .wishlist_table .item-details-table td {
        padding: 10px 12px !important;

        background: var(--yq-white) !important;
        border: 0 !important;
    }

    .wishlist_table .item-details-table td.label {
        width: 42% !important;

        color: var(--yq-text) !important;
        font-size: 0 !important;
        font-weight: 600 !important;
        text-align: left !important;
    }

    .wishlist_table .item-details-table td.label::after {
        content: "商品単価";
        font-size: 13px;
    }

    .wishlist_table .item-details-table td.value {
        width: 58% !important;

        color: var(--yq-brown) !important;
        font-weight: 700 !important;
        text-align: right !important;
    }

    /* 在庫状況 */
    .wishlist_table .additional-info-wrapper {
        clear: both !important;

        width: 100% !important;
        margin: 0 0 40px !important;
    }

    .wishlist_table .additional-info {
        width: 100% !important;
        margin: 0 !important;

        border-right: 1px solid var(--yq-border) !important;
        border-bottom: 1px solid var(--yq-border) !important;
        border-left: 1px solid var(--yq-border) !important;
        border-collapse: separate !important;
        border-spacing: 0 !important;
        border-radius: 0 0 7px 7px !important;

        overflow: hidden !important;
    }

    .wishlist_table .additional-info td {
        padding: 10px 12px !important;

        background: var(--yq-white) !important;
        border: 0 !important;
    }

    .wishlist_table .additional-info td.label {
        width: 42% !important;

        color: var(--yq-text) !important;
        font-size: 0 !important;
        font-weight: 600 !important;
        text-align: left !important;
    }

    .wishlist_table .additional-info td.label::after {
        content: "在庫状況";
        font-size: 13px;
    }

    .wishlist_table .additional-info td.value {
        width: 58% !important;

        color: var(--yq-text) !important;
        text-align: right !important;
    }

    /* スマホボタン */
    .wishlist_table .product-add-to-cart {
        width: 100% !important;
        margin: 12px 0 0 !important;
        padding: 0 !important;
    }

    .wishlist_table .product-remove {
        width: 100% !important;
        margin: 8px 0 0 !important;
        padding: 0 !important;
    }

    .wishlist_table .product-add-to-cart a,
    .wishlist_table .product-add-to-cart button,
    .wishlist_table .product-remove a.remove_from_wishlist {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        min-height: 46px !important;

        margin: 0 !important;
    }

    .wishlist_table .product-remove,
    .wishlist_table .product-remove a.remove_from_wishlist {
        border-top: 0 !important;
        border-bottom: 0 !important;

        box-shadow: none !important;
        outline: 0 !important;
    }

    /* SNSとの間隔 */
    .yith-wcwl-share,
    .wishlist-share,
    .social-icons.share-icons,
    .share-icons {
        clear: both !important;

        margin-top: 32px !important;
        padding-top: 20px !important;

        border-top: 1px solid var(--yq-border-light) !important;
    }
}

/* 16-5. お気に入りが空の場合 */
.wishlist-empty,
.yith-wcwl-empty,
.woocommerce-message.wishlist-empty,
.wishlist-empty p,
.yith-wcwl-empty p {
    margin: 0 !important;
    padding: 56px 20px !important;

    background: transparent !important;
    border: 0 !important;

    color: var(--yq-brown) !important;

    font-size: 18px !important;
    font-weight: 500 !important;
    line-height: 1.6 !important;
    letter-spacing: 0.04em !important;

    text-align: center !important;

    box-shadow: none !important;
}

@media screen and (max-width: 849px) {

    .wishlist-empty,
    .yith-wcwl-empty,
    .woocommerce-message.wishlist-empty,
    .wishlist-empty p,
    .yith-wcwl-empty p {
        padding: 40px 16px !important;

        font-size: 18px !important;
        line-height: 1.7 !important;
    }
}

/* YITH Wishlist 4.16.0 / タイトルを全ユーザー共通に固定 */
/* タイトルエリア */
.wishlist-title-container {
    display: block !important;
    width: 100% !important;
    margin: 0 auto 15px !important;
    padding: 20px 0 !important;
    text-align: center !important;
}

/* タイトル本体 */
.wishlist-title-container .wishlist-title,
.wishlist-title-container .wishlist-title-with-form {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    text-align: center !important;
}

/* 元のユーザー別タイトルを非表示 */
.wishlist-title-container h2 {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 0 !important;
    line-height: 1.4 !important;
    text-align: center !important;
}

/* 日本語：全ユーザー共通 */
html:not([lang^="en"]) .wishlist-title-container h2::after {
    content: "お気に入り";
    display: block !important;
    color: var(--yq-brown) !important;
    font-size: 21px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    text-align: center !important;
}

/* 英語：全ユーザー共通 */
html[lang^="en"] .wishlist-title-container h2::after {
    content: "Wishlist";
    display: block !important;
    color: var(--yq-brown) !important;
    font-size: 21px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    text-align: center !important;
}

/* タイトル編集機能を完全に非表示 */
.wishlist-title-container .show-title-form,
.wishlist-title-container .hidden-title-form,
.wishlist-title-container input[name="wishlist_name"],
.wishlist-title-container .edit-title-buttons,
.wishlist-title-container .hide-title-form,
.wishlist-title-container .save-title-form {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
}

/* SVGアイコンも非表示 */
.wishlist-title-container .show-title-form svg,
.wishlist-title-container .hide-title-form svg,
.wishlist-title-container .save-title-form svg,
.wishlist-title-container .yith-wcwl-icon-svg {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
}

/* スマートフォン */
@media screen and (max-width: 849px) {

    .wishlist-title-container {
        margin-bottom: 25px !important;
        padding: 15px 0 !important;
    }

    html:not([lang^="en"]) .wishlist-title-container h2::after,
    html[lang^="en"] .wishlist-title-container h2::after {
        font-size: 21px !important;
    }
}

/* 2. ヘッダーアイコンのホバー / Flatsomeの i・疑似要素まで対応 */
/* 丸い背景・枠 */
.header-nav a:hover .icon-circle,
.header-nav .header-button:hover .icon-circle,
.header-nav .account-item:hover .icon-circle,
.header-nav .wishlist-item:hover .icon-circle,
.header-nav .cart-item:hover .icon-circle,
.header-nav .search-dropdown:hover .icon-circle{
    background:var(--yq-gold) !important;
    border-color:var(--yq-gold) !important;
}

/* アイコン本体 */
.header-nav a:hover .icon,
.header-nav a:hover i,
.header-nav a:hover i::before,
.header-nav .header-button:hover .icon,
.header-nav .header-button:hover i,
.header-nav .header-button:hover i::before,
.header-nav .account-item:hover .icon,
.header-nav .account-item:hover i,
.header-nav .account-item:hover i::before,
.header-nav .wishlist-item:hover .icon,
.header-nav .wishlist-item:hover i,
.header-nav .wishlist-item:hover i::before,
.header-nav .cart-item:hover .icon,
.header-nav .cart-item:hover i,
.header-nav .cart-item:hover i::before,
.header-nav .search-dropdown:hover .icon,
.header-nav .search-dropdown:hover i,
.header-nav .search-dropdown:hover i::before{
    color:var(--yq-white) !important;
    fill:var(--yq-white) !important;
    stroke:var(--yq-white) !important;
}

/* 円の中にある要素すべて */
.header-nav a:hover .icon-circle *,
.header-nav .header-button:hover .icon-circle *,
.header-nav .account-item:hover .icon-circle *,
.header-nav .wishlist-item:hover .icon-circle *,
.header-nav .cart-item:hover .icon-circle *,
.header-nav .search-dropdown:hover .icon-circle *{
    color:var(--yq-white) !important;
    fill:var(--yq-white) !important;
    stroke:var(--yq-white) !important;
}

/* カート・お気に入りの件数バッジだけ */
.header-nav a:hover .cart-icon strong,
.header-nav .cart-item:hover .cart-icon strong,
.header-nav .wishlist-item:hover .wishlist-icon strong{
    background:var(--yq-brown) !important;
    border-color:var(--yq-brown) !important;
    color:var(--yq-white) !important;
}

/* =========================================================
   YQ ACCOUNT MOBILE FORM FIX
   アカウント詳細：スマホ1列固定
========================================================= */
@media screen and (max-width: 849px) {

    body.woocommerce-account .woocommerce-MyAccount-content,
    body.woocommerce-account .woocommerce-EditAccountForm {
        min-width: 0 !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    body.woocommerce-account
    .woocommerce-EditAccountForm
    .form-row,
    body.woocommerce-account
    .woocommerce-EditAccountForm
    .form-row-first,
    body.woocommerce-account
    .woocommerce-EditAccountForm
    .form-row-last {
        float: none !important;
        clear: both !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
        box-sizing: border-box !important;
    }

    body.woocommerce-account
    .woocommerce-EditAccountForm
    input,
    body.woocommerce-account
    .woocommerce-EditAccountForm
    select,
    body.woocommerce-account
    .woocommerce-EditAccountForm
    textarea {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }
}
