.page-account{background:var(--legacy-cream)}
.page-account .legacy-nav a.is-current,.page-account .legacy-mobile-nav a.is-current{color:var(--primary);font-weight:800}
.account-hero-section{padding-top:28px;padding-bottom:16px;background:linear-gradient(180deg,rgba(255,248,241,.9),rgba(255,244,234,.35))}
.account-hero-grid,.account-main-grid,.account-two-col,.account-summary-grid,.account-form-grid{display:grid;gap:22px}
.account-hero-grid{grid-template-columns:1.12fr .88fr;align-items:stretch}
.account-main-grid{grid-template-columns:minmax(320px,.9fr) minmax(0,1.6fr);align-items:start}
.account-two-col{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px}
.account-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:24px}
.account-hero-card,.account-card{background:#fff;border:1px solid #e7d9bd;border-radius:28px;box-shadow:0 18px 40px rgba(66,45,12,.08)}
.account-hero-copy,.account-hero-side,.account-card{padding:26px}
.account-hero-copy h1{margin:10px 0 14px;font-size:clamp(2rem,3.2vw,3.4rem);line-height:1.08;color:#2b221d}
.account-hero-copy p{max-width:70ch;color:#6b5849}
.account-badge-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.account-badge,.account-pill{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;border:1px solid #e6d6b8;background:#f9f2e5;color:#4c3a2d;font-weight:700;font-size:.92rem}
.account-pill-row{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.account-pill--tier{background:#fff0f7;border-color:rgba(216,27,116,.18);color:var(--primary)}
.account-hero-side{background:radial-gradient(circle at top right,#fff6e8 0,#fff 62%)}
.account-hero-side h2{margin:0 0 18px;font-size:1.5rem}
.account-mini-stack,.account-list{display:grid;gap:14px}
.account-mini-card,.account-subcard,.account-empty-state,.account-policy-box,.account-detail-meta,.account-points-summary,.account-feedback{border:1px solid #eadfc9;border-radius:20px;background:#fffaf3}
.account-mini-card{padding:16px 18px}
.account-mini-card strong{display:block;margin-bottom:6px;color:#2f241e}
.account-mini-card span{display:block;color:#6f6258;line-height:1.55}
.account-auth-card{position:sticky;top:102px}
.account-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:18px}
.account-section-head h2{margin:6px 0 0;font-size:1.55rem}
.account-section-head .eyebrow{margin:0}
.account-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.account-form-grid .span-2{grid-column:span 2}
.account-form-grid label{display:grid;gap:8px;font-weight:700;color:#5f4a3b}
.account-form-grid input,.account-form-grid textarea,.account-form-grid select,.account-toolbar select{width:100%;border:1px solid #dcc8a8;border-radius:16px;padding:13px 14px;background:#fff;color:#2b221d;font:inherit}
.account-form-grid textarea{min-height:120px;resize:vertical}
.account-form-grid input:focus,.account-form-grid textarea:focus,.account-form-grid select:focus,.account-toolbar select:focus{outline:none;border-color:#bb8a4a;box-shadow:0 0 0 3px rgba(187,138,74,.16)}
.account-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:16px}
.account-actions.compact{margin-top:14px}
.account-subcard{padding:18px;margin-top:18px}
.account-subcard h3{margin:0 0 14px;font-size:1.1rem}
.account-auth-note{display:flex;gap:10px;align-items:flex-start;margin-top:18px;padding:14px 16px;border-radius:18px;background:#fff5ea;border:1px dashed #dfc89f;color:#6f5842}
.account-otp-input{text-align:center;letter-spacing:.48em;font-size:1.35rem;font-weight:800}
.account-feedback{padding:14px 16px;margin-bottom:16px;display:block}
.account-feedback.is-hidden{display:none}
.account-feedback.info{background:#fff7e8;border-color:#ffd899;color:#8a5200}
.account-feedback.success{background:#edf9f2;border-color:#b8ebc7;color:#14613d}
.account-feedback.error{background:#fff0f0;border-color:#ffc1c1;color:#9e2121}
.account-shell.is-hidden{display:none}
.account-profile-top{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}
.account-profile-top h2{margin:6px 0 8px;font-size:1.9rem}
.account-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:16px;align-items:end;margin-top:20px}
.account-toolbar label{display:block;margin-bottom:8px;font-weight:700;color:#5f4a3b}
.account-toolbar-actions{display:flex;justify-content:flex-end}
.account-metric-card{display:flex;flex-direction:column;gap:8px;min-height:128px;justify-content:space-between}
.account-metric-card span{color:#725f50;font-weight:600}
.account-metric-card strong{font-size:2rem;color:#2c221d;line-height:1}
.account-progress{margin-top:16px}
.account-progress-track{height:12px;border-radius:999px;background:#f0e4d0;overflow:hidden}
.account-progress-fill{height:100%;width:0;background:linear-gradient(90deg,var(--primary),#ff86bb)}
.account-benefit-list{display:grid;gap:10px;margin-top:18px}
.account-benefit-item{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:16px;background:#fff7ef;border:1px solid #eadac5;color:#584736}
.account-benefit-item i{margin-top:2px;color:#1a8f55}
.account-empty-state{padding:18px;color:#6f6258}
.account-reservation-card,.account-giftcard-card,.account-request-card,.account-movement-card{border:1px solid #e8dcc7;border-radius:22px;background:#fffdf9;padding:18px}
.account-reservation-head,.account-giftcard-head,.account-request-head,.account-movement-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.account-reservation-card h3,.account-giftcard-card h3,.account-request-card h3,.account-movement-card h3{margin:0;font-size:1.1rem;color:#2f241e}
.account-card-meta,.account-card-copy,.account-policy-box,.account-detail-meta,.account-points-summary{color:#65584c;line-height:1.55}
.account-status-chip{display:inline-flex;align-items:center;padding:7px 11px;border-radius:999px;font-size:.85rem;font-weight:800;border:1px solid transparent}
.account-status-chip.upcoming{background:#edf9f2;border-color:#b8ebc7;color:#14613d}
.account-status-chip.completed,.account-status-chip.active{background:#f5efe3;border-color:#ead7b4;color:#5a4529}
.account-status-chip.cancelled,.account-status-chip.error{background:#fff0f0;border-color:#ffc1c1;color:#9e2121}
.account-status-chip.pending{background:#f2f7ff;border-color:#c8dcff;color:#265aaf}
.account-card-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.account-card-actions .btn{min-height:44px}
.account-card-kv{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.account-card-kv div{padding:12px;border-radius:16px;background:#faf3e6;border:1px solid #eadac5}
.account-card-kv strong{display:block;margin-bottom:4px;color:#3c2b20}
.account-policy-box{padding:16px 18px;margin-bottom:18px;background:#fff7e8}
.account-policy-box.read-only{background:#f7f1e8}
.account-policy-box.allowed{background:#edf9f2}
.account-policy-box.warning{background:#fff7e8}
.account-detail-meta{padding:16px 18px;margin-bottom:16px;background:#fffdf8}
.account-points-summary{padding:16px 18px;background:#fffdf8;margin-bottom:16px}
.account-points-summary strong{font-size:1.6rem;color:#2c221d;display:block;margin-top:6px}
.account-help-inline{font-size:.92rem;color:#7a6757}
.account-giftcard-actions .btn{padding-inline:16px}
.account-login-skeleton{display:none}
.page-account .iti,.page-account .iti__tel-input{width:100%}
.page-account .legacy-whatsapp-btn{white-space:nowrap}
@media (max-width: 1100px){
  .account-main-grid,.account-hero-grid,.account-summary-grid,.account-two-col,.account-toolbar{grid-template-columns:1fr}
  .account-auth-card{position:static}
  .account-profile-top{flex-direction:column}
  .account-pill-row{justify-content:flex-start}
}
@media (max-width: 760px){
  .account-hero-copy,.account-hero-side,.account-card{padding:20px}
  .account-form-grid,.account-card-kv{grid-template-columns:1fr}
  .account-form-grid .span-2{grid-column:auto}
  .account-summary-grid{grid-template-columns:1fr 1fr}
  .account-actions .btn,.account-card-actions .btn{width:100%}
}
@media (max-width: 560px){
  .account-summary-grid{grid-template-columns:1fr}
}

.account-main-grid.is-authenticated{grid-template-columns:1fr}
.account-main-grid.is-authenticated .account-content-column{grid-column:1/-1}
.btn-compact{padding:10px 16px;min-height:44px}
.account-scope-note{margin:14px 0 0;color:#705f52;line-height:1.5}
.account-summary-head{margin-top:24px;margin-bottom:0}
.account-membership-head-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.account-membership-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}
.account-membership-stat{padding:14px 16px;border:1px solid #eadac5;border-radius:18px;background:#fff8f0}
.account-membership-stat span{display:block;color:#765f51;font-weight:600;font-size:.92rem}
.account-membership-stat strong{display:block;margin-top:6px;font-size:1.35rem;color:#2c221d;line-height:1.15}
.account-membership-summary{margin:0 0 10px}
.account-membership-subhead{margin:18px 0 10px;color:#5a4638;font-weight:700}
.account-tier-strip{display:grid;gap:10px;margin-top:6px}
.account-tier-chip{padding:12px 14px;border:1px solid #e8dcc7;border-radius:18px;background:#fffdf8;display:grid;gap:4px}
.account-tier-chip strong{color:#2f241e}
.account-tier-chip span{color:#6f6258;font-size:.92rem;line-height:1.4}
.account-tier-chip.is-current{background:#fff1f7;border-color:rgba(216,27,116,.18);box-shadow:0 10px 24px rgba(216,27,116,.08)}
.account-request-readonly{margin-top:12px}
.membership-hero-section{padding-top:28px;padding-bottom:16px;background:linear-gradient(180deg,rgba(255,248,241,.92),rgba(255,244,234,.4))}
.membership-layout,.membership-how-grid,.membership-tier-grid,.membership-faq-grid{display:grid;gap:22px}
.membership-layout{grid-template-columns:1.05fr .95fr}
.membership-panel{background:#fff;border:1px solid #e7d9bd;border-radius:28px;box-shadow:0 18px 40px rgba(66,45,12,.08);padding:26px}
.membership-panel h1,.membership-panel h2{color:#2b221d}
.membership-panel h1{margin:10px 0 14px;font-size:clamp(2rem,3vw,3.25rem);line-height:1.08}
.membership-panel p{color:#6b5849;line-height:1.6}
.membership-badge-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px}
.membership-how-grid{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:24px}
.membership-step{padding:18px;border:1px solid #eadac5;border-radius:22px;background:#fffaf3}
.membership-step strong{display:block;margin-bottom:8px;color:#2f241e}
.membership-tier-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px}
.membership-tier-card{padding:22px;border:1px solid #e8dcc7;border-radius:24px;background:#fff}
.membership-tier-card.is-featured{background:linear-gradient(180deg,#fff6fb,#fff)}
.membership-tier-top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:16px}
.membership-tier-top h3{margin:0;color:#2b221d;font-size:1.45rem}
.membership-tier-top p{margin:6px 0 0;color:#6b5849}
.membership-tier-chip{display:inline-flex;align-items:center;justify-content:center;padding:9px 14px;border-radius:999px;border:1px solid #e6d6b8;background:#f9f2e5;color:#4c3a2d;font-weight:700}
.membership-tier-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}
.membership-tier-meta div{padding:12px 14px;border:1px solid #eadac5;border-radius:18px;background:#fff8f0}
.membership-tier-meta strong{display:block;margin-bottom:5px;color:#3c2b20}
.membership-tier-benefits{display:grid;gap:10px;margin-top:16px}
.membership-tier-benefits li{list-style:none;padding:12px 14px;border:1px solid #eadac5;border-radius:18px;background:#fffdf8;color:#584736}
.membership-faq-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:24px}
.membership-faq-card{padding:20px;border:1px solid #eadac5;border-radius:22px;background:#fffdf8}
.membership-faq-card h3{margin:0 0 10px;color:#2b221d;font-size:1.1rem}
.membership-note{margin-top:20px;padding:16px 18px;border:1px dashed #dfc89f;border-radius:20px;background:#fff6eb;color:#6f5842}
@media (max-width:1100px){
  .membership-layout,.membership-how-grid,.membership-tier-grid,.membership-faq-grid{grid-template-columns:1fr}
}
@media (max-width:760px){
  .account-membership-stats,.membership-tier-meta{grid-template-columns:1fr}
}

.account-profile-card--full{display:grid;gap:24px}
.account-profile-toolbar{margin-top:0}
.account-profile-body{display:grid;grid-template-columns:minmax(0,1.18fr) minmax(320px,.82fr);gap:24px;align-items:start}
.account-summary-panel,.account-membership-inline{display:grid;gap:16px}
.account-summary-grid--profile{margin-top:0}
.account-summary-head--profile{margin-top:0}
.account-membership-inline{padding:22px;border:1px solid #eadac5;border-radius:24px;background:#fffaf3}
.account-membership-inline .account-section-head{margin-bottom:0}
.account-membership-inline .account-progress{margin-top:0}
.account-membership-inline .account-membership-stats{margin-top:2px;margin-bottom:0}
.account-membership-inline .account-benefit-list{margin-top:0}
.account-tabs{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px;margin-bottom:18px}
.account-tab-btn{border:1px solid #dcc8a8;background:#fffaf2;color:#4b392d;border-radius:999px;padding:12px 18px;font:inherit;font-weight:700;cursor:pointer;transition:.18s ease}
.account-tab-btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(62,38,11,.08)}
.account-tab-btn.is-active{background:#211538;color:#fff;border-color:#211538;box-shadow:0 12px 26px rgba(33,21,56,.18)}
.account-tab-panel{display:none}
.account-tab-panel.is-active{display:block}
.account-modal{position:fixed;inset:0;z-index:1200;padding:24px;display:flex;align-items:center;justify-content:center}
.account-modal.is-hidden{display:none}
.account-modal-backdrop{position:absolute;inset:0;background:rgba(27,16,31,.58);backdrop-filter:blur(2px)}
.account-modal-dialog{position:relative;z-index:1;width:min(920px,100%);max-height:min(88vh,980px);overflow:auto;padding:28px;border-radius:28px;background:#fff;border:1px solid #eadac5;box-shadow:0 24px 60px rgba(20,10,12,.28)}
.account-modal-close{position:absolute;top:16px;right:16px;border:1px solid #e3d2bb;background:#fff;border-radius:999px;width:42px;height:42px;font:inherit;font-size:1.4rem;line-height:1;cursor:pointer;color:#4b392d}
body.account-modal-open{overflow:hidden}
.account-modal .account-section-head{padding-right:56px}
.account-modal .account-detail-meta,.account-modal .account-policy-box{margin-bottom:18px}
.account-modal .account-actions{margin-top:18px}
@media (max-width:1100px){
  .account-profile-body{grid-template-columns:1fr}
}
@media (max-width:760px){
  .account-tab-btn{width:100%;justify-content:center}
  .account-modal{padding:12px}
  .account-modal-dialog{padding:22px}
}
.account-actions-inline{margin-top:0;margin-bottom:14px}
.account-slot-group{margin-top:16px;padding:18px;border:1px dashed #eadac5;border-radius:20px;background:#fffdf9}
.account-slot-label{margin:0 0 10px;color:#5d4a3d;font-weight:700}
.account-choice-list{display:flex;flex-wrap:wrap;gap:10px}
.account-choice-chip{border:1px solid #dcc8a8;background:#fffaf2;color:#4b392d;border-radius:999px;padding:10px 16px;font:inherit;font-weight:700;cursor:pointer;transition:.18s ease}
.account-choice-chip.is-active,.account-choice-chip:hover{background:#211538;color:#fff;border-color:#211538}
.account-inline-summary{margin-top:14px;padding:14px 16px;border:1px solid #eadac5;border-radius:18px;background:#fff8f0;display:grid;gap:6px;color:#4c3a2d}
