.member-auth-page,.member-page{background:#f3f7f7}.member-auth-shell{width:min(100% - 32px,680px);min-height:calc(100vh - 160px);margin:0 auto;padding:clamp(42px,8vw,86px) 0}.member-auth-card,.member-history-card,.member-dashboard-hero,.member-summary-card{background:#fff;border:1px solid #c8d9da;border-radius:16px;box-shadow:0 10px 30px rgba(24,70,68,.08)}.member-auth-card{padding:clamp(24px,5vw,44px)}.member-auth-heading{margin-bottom:28px}.member-auth-kicker{display:inline-block;margin-bottom:8px;color:#227f78;font-size:.78rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.member-auth-heading h1,.member-dashboard-hero h1{margin:0;font-size:clamp(2rem,6vw,3.2rem);line-height:1.05}.member-auth-heading p,.member-dashboard-hero p,.member-history-heading p{margin:10px 0 0;color:#617172;line-height:1.6}.member-form{display:grid;gap:18px}.member-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.member-field label{display:block;margin-bottom:7px;font-weight:700}.member-field input{width:100%;min-height:46px;padding:10px 12px;border:1px solid #9db7b8;border-radius:8px;background:#fff;font:inherit}.member-field input:focus{outline:3px solid rgba(45,154,146,.18);border-color:#2d9a92}.member-field small{display:block;margin-top:6px;color:#617172;font-size:.82rem}.member-submit{min-height:48px;padding:10px 18px;border:1px solid #2d9a92;border-radius:9px;color:#fff;background:#2d9a92;font:inherit;font-weight:800;cursor:pointer}.member-submit:hover{background:#227f78}.member-check{display:flex;align-items:flex-start;gap:10px;color:#617172;line-height:1.5}.member-check input{width:18px;height:18px;margin-top:2px;accent-color:#2d9a92}.member-check a,.member-auth-switch a{color:#227f78;font-weight:700;text-decoration:underline}.member-auth-switch{margin:24px 0 0;padding-top:20px;border-top:1px solid #d8e7e8;color:#617172;text-align:center}.member-alert{margin:0 0 22px;padding:13px 15px;border-radius:9px}.member-alert--error{color:#842626;background:#f8dddd;border:1px solid #e5afaf}
.member-dashboard{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:clamp(36px,6vw,72px) 0 80px}.member-dashboard-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:clamp(24px,4vw,38px)}.member-account-chip{flex:0 0 auto;max-width:360px;padding:14px 18px;border-radius:11px;color:#173f3c;background:#d8e7e8}.member-account-chip strong,.member-account-chip span{display:block;overflow:hidden;text-overflow:ellipsis}.member-account-chip span{margin-top:4px;font-size:.88rem;opacity:.78}.member-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:18px 0}.member-summary-card{padding:22px}.member-summary-card strong,.member-summary-card span{display:block}.member-summary-card strong{color:#173f3c;font-size:clamp(1.25rem,3vw,1.75rem)}.member-summary-card span{margin-top:6px;color:#617172}.member-history-card{overflow:hidden}.member-history-heading{padding:24px 26px 18px;border-bottom:1px solid #d8e7e8}.member-history-heading h2{margin:0}.member-history-list{display:grid}.member-history-row{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:17px 26px;border-bottom:1px solid #e6eeee;text-decoration:none}.member-history-row:hover{background:#f3f8f8}.member-history-copy{min-width:0}.member-history-copy strong,.member-history-copy small{display:block}.member-history-copy strong,.member-history-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-history-copy small{margin-top:4px;color:#617172}.member-history-row time{flex:0 0 auto;color:#617172;font-size:.87rem}.member-empty-history{display:grid;gap:5px;padding:34px 26px;color:#617172}.member-pagination{display:flex;align-items:center;justify-content:center;gap:14px;padding:18px 24px}.member-pagination a{padding:8px 12px;border:1px solid #c8d9da;border-radius:8px;color:#227f78;font-weight:700}.member-pagination span{color:#617172;font-size:.9rem}
@media(max-width:760px){.member-form-grid,.member-summary-grid{grid-template-columns:1fr}.member-dashboard-hero{align-items:stretch;flex-direction:column}.member-account-chip{max-width:none}.member-history-row{align-items:flex-start;flex-direction:column;gap:7px}.member-history-row time{flex:auto}}

/* Security/account additions */
.member-alert--success{color:#175b57;background:#e4f4f2;border:1px solid #a8d8d4}
.member-auth-links{display:flex;justify-content:space-between;gap:14px;margin-top:16px;font-size:.9rem}
.member-auth-links a{color:#227f78;font-weight:700;text-decoration:underline;text-underline-offset:2px}
.member-history-heading--actions{display:flex;align-items:center;justify-content:space-between;gap:20px}
.member-history-heading--actions form{margin:0}
.member-danger-button{padding:9px 12px;border:1px solid #a44646;border-radius:8px;background:#fff;color:#8a2e2e;font:inherit;font-size:.86rem;font-weight:700;cursor:pointer;white-space:nowrap}
.member-danger-button:hover,.member-danger-button:focus-visible{background:#fff1f1}
.member-inline-notice{margin:18px 26px 0;padding:11px 13px;border:1px solid #a8d8d4;border-radius:8px;background:#e4f4f2;color:#175b57}
@media(max-width:760px){.member-auth-links{flex-direction:column}.member-history-heading--actions{align-items:flex-start;flex-direction:column}}



/* =========================================================
   Member account layout / sidebar
   ========================================================= */
.member-account-shell{
    width:min(1240px,calc(100% - 32px));
    margin:0 auto;
    padding:clamp(34px,5vw,64px) 0 80px;
    display:grid;
    grid-template-columns:250px minmax(0,1fr);
    gap:24px;
    align-items:start;
}
.member-account-content{min-width:0}
.member-sidebar{
    position:sticky;
    top:92px;
    overflow:hidden;
    border:1px solid #c8d9da;
    border-radius:14px;
    background:#fff;
    box-shadow:0 10px 30px rgba(24,70,68,.08)
}
.member-sidebar__title{
    padding:17px 18px;
    color:#fff;
    background:#2d9a92;
    font-size:1.05rem
}
.member-sidebar__nav{
    display:grid;
    padding:10px
}
.member-sidebar__nav a{
    display:block;
    padding:11px 12px;
    border-radius:8px;
    color:#173f3c;
    text-decoration:none;
    font-weight:700
}
.member-sidebar__nav a:hover,
.member-sidebar__nav a:focus-visible{
    background:#eef6f6
}
.member-sidebar__nav a.active{
    color:#176d67;
    background:#d8e7e8
}
.member-sidebar__group{
    display:block;
    padding:16px 12px 6px;
    color:#617172;
    font-size:.76rem;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase
}

/* Settings pages */
.member-settings-card{
    padding:clamp(24px,4vw,38px);
    border:1px solid #c8d9da;
    border-radius:16px;
    background:#fff;
    box-shadow:0 10px 30px rgba(24,70,68,.08)
}
.member-settings-card>h1{
    margin:0;
    font-size:clamp(2rem,5vw,3rem)
}
.member-settings-card>p{
    margin:12px 0 0;
    color:#617172;
    line-height:1.65
}
.member-settings-block{
    margin-top:26px;
    padding-top:24px;
    border-top:1px solid #d8e7e8
}
.member-settings-block h2{
    margin:0 0 14px;
    color:#173f3c;
    font-size:1.25rem
}
.member-settings-form{
    display:grid;
    gap:17px;
    max-width:680px
}
.member-settings-button{
    display:inline-flex;
    width:max-content;
    min-height:44px;
    align-items:center;
    justify-content:center;
    padding:9px 16px;
    border:1px solid #2d9a92;
    border-radius:8px;
    color:#fff;
    background:#2d9a92;
    font:inherit;
    font-weight:800;
    text-decoration:none;
    cursor:pointer
}
.member-settings-button:hover,
.member-settings-button:focus-visible{
    background:#227f78
}
.member-settings-note{
    display:grid;
    gap:5px;
    margin-top:24px;
    padding:16px;
    border-radius:10px;
    color:#365251;
    background:#eef6f6
}
.member-settings-footnote{
    margin:18px 0 0;
    color:#617172;
    font-size:.9rem;
    line-height:1.6
}
.member-subscription-status{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin:24px 0;
    padding:17px 18px;
    border:1px solid #d8e7e8;
    border-radius:10px;
    background:#f7fbfb
}
.member-subscription-status span{color:#617172}
.member-subscription-status strong.is-subscribed{color:#176d67}
.member-subscription-status strong.is-unsubscribed{color:#842626}

/* Numbered history pagination */
.member-pagination .current{
    color:#fff;
    background:#2d9a92;
    border-color:#2d9a92
}

@media(max-width:900px){
    .member-account-shell{
        grid-template-columns:1fr
    }
    .member-sidebar{
        position:static
    }
    .member-sidebar__nav{
        grid-template-columns:repeat(2,minmax(0,1fr))
    }
    .member-sidebar__group{
        grid-column:1/-1
    }
}
@media(max-width:560px){
    .member-sidebar__nav{
        grid-template-columns:1fr
    }
    .member-subscription-status{
        align-items:flex-start;
        flex-direction:column
    }
}


/* Dedicated inline Manage Cookies page */
.member-cookie-settings .member-cookie-intro{max-width:850px;margin:14px 0 0;color:#405657;line-height:1.7}
.member-cookie-small{max-width:850px;margin:12px 0 0;color:#617172;font-size:.92rem;line-height:1.6}
.member-cookie-small a{color:#227f78;font-weight:700}
.member-cookie-inline{margin-top:28px;border-top:1px solid #d8e7e8}
.member-cookie-category{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 0;border-bottom:1px solid #d8e7e8}
.member-cookie-category h2{margin:0 0 6px;color:#173f3c;font-size:1.14rem}
.member-cookie-category p{max-width:760px;margin:0;color:#617172;line-height:1.55}
.member-cookie-required{flex:0 0 auto;color:#227f78;font-size:.9rem;white-space:nowrap}
.member-cookie-category.is-disabled{opacity:.68}
.member-cookie-switch{position:relative;flex:0 0 auto;display:inline-flex;width:50px;height:28px}
.member-cookie-switch input{position:absolute;width:1px;height:1px;opacity:0}
.member-cookie-switch span{position:absolute;inset:0;border-radius:999px;background:#aabcbc;cursor:pointer;transition:.18s ease}
.member-cookie-switch span::after{content:"";position:absolute;top:4px;left:4px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.2);transition:.18s ease}
.member-cookie-switch input:checked + span{background:#2d9a92}
.member-cookie-switch input:checked + span::after{transform:translateX(22px)}
.member-cookie-switch input:focus-visible + span{outline:3px solid rgba(45,154,146,.2);outline-offset:2px}
.member-cookie-switch input:disabled + span{cursor:not-allowed}
.member-cookie-active{margin-top:30px}
.member-cookie-active__heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:14px}
.member-cookie-active__heading h2{margin:0 0 5px;color:#173f3c;font-size:1.2rem}
.member-cookie-active__heading p{margin:0;color:#617172}
.member-cookie-text-button{padding:0;border:0;background:transparent;color:#227f78;font:inherit;font-weight:800;text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.member-cookie-table-wrap{overflow-x:auto;border:1px solid #c8d9da;border-radius:10px}
.member-cookie-table{width:100%;min-width:680px;border-collapse:collapse}
.member-cookie-table th,.member-cookie-table td{padding:13px 14px;border-bottom:1px solid #d8e7e8;text-align:left;vertical-align:top}
.member-cookie-table th{color:#173f3c;background:#eef6f6}
.member-cookie-table tr:last-child td{border-bottom:0}
.member-cookie-status{display:inline-block;padding:4px 8px;border-radius:999px;color:#617172;background:#edf1f1;font-size:.82rem;font-weight:700;white-space:nowrap}
.member-cookie-status--active{color:#176d67;background:#dff3ed}
.member-cookie-notice{margin:12px 0 0;color:#617172;font-size:.87rem;line-height:1.55}
.member-cookie-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:24px}
.member-cookie-reject-button{min-height:44px;padding:9px 14px;border:1px solid #b6c6c7;border-radius:8px;color:#334b4c;background:#fff;font:inherit;font-weight:800;cursor:pointer}
.member-cookie-reject-button:hover,.member-cookie-reject-button:focus-visible{background:#f0f5f5}
.member-inline-notice.is-error{color:#842626;background:#f8dddd;border-color:#e5afaf}
@media(max-width:650px){.member-cookie-category,.member-cookie-active__heading{align-items:flex-start;flex-direction:column}}
