.hpt-account {
  --hpt-account-panel: var(--wp--preset--color--panel, #172235);
  --hpt-account-panel-strong: #1d2b41;
  --hpt-account-border: rgba(147, 197, 253, .2);
  --hpt-account-text: var(--wp--preset--color--foreground, #f8fafc);
  --hpt-account-muted: var(--wp--preset--color--muted, #b8c5d7);
  --hpt-account-accent: var(--wp--preset--color--cyan, #2dd4bf);
  --hpt-account-accent-dark: #0f766e;
  max-width: 1120px;
  margin: 0 auto;
  padding: clamp(44px, 7vw, 88px) 24px 96px;
  color: var(--hpt-account-text);
}

.hpt-account *, .hpt-account *::before, .hpt-account *::after { box-sizing: border-box; }
.hpt-account h1, .hpt-account h2, .hpt-account p { margin-top: 0; }
.hpt-account h1 { font-size: clamp(2rem, 5vw, 3.75rem); line-height: 1.06; margin-bottom: 16px; }
.hpt-account h2 { font-size: clamp(1.2rem, 2.4vw, 1.55rem); margin-bottom: 8px; }
.hpt-account p { color: var(--hpt-account-muted); line-height: 1.65; }
.hpt-account__intro { max-width: 760px; margin: 0 auto 30px; text-align: center; }
.hpt-account__eyebrow { display: inline-block; margin-bottom: 12px; color: var(--hpt-account-accent); font-family: "Segoe UI", Arial, sans-serif; font-weight: 750; letter-spacing: .045em; text-transform: uppercase; font-size: clamp(.94rem, 1.1vw, 1.05rem); line-height: 1.45; }
.hpt-account[dir="rtl"] .hpt-account__eyebrow { letter-spacing: 0; text-transform: none; }

.hpt-account__tabs { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; margin: 0 auto 22px; }
.hpt-account__tab { min-height: 44px; display: inline-flex; align-items: center; justify-content: center; padding: 10px 18px; border: 1px solid var(--hpt-account-border); border-radius: 999px; color: var(--hpt-account-muted); text-decoration: none; font-weight: 700; transition: .18s ease; }
.hpt-account__tab:hover, .hpt-account__tab:focus-visible { color: var(--hpt-account-text); border-color: var(--hpt-account-accent); }
.hpt-account__tab.is-active { color: #062f2d; background: var(--hpt-account-accent); border-color: var(--hpt-account-accent); }

.hpt-account__panel { max-width: 760px; margin: 0 auto; padding: clamp(24px, 4vw, 42px); border: 1px solid var(--hpt-account-border); border-radius: 20px; background: linear-gradient(145deg, rgba(29,43,65,.98), rgba(18,29,46,.98)); box-shadow: 0 24px 70px rgba(0,0,0,.2); }
.hpt-account__form-heading { margin-bottom: 24px; }
.hpt-account__form-heading p { margin-bottom: 0; }
.hpt-account__form { display: grid; gap: 18px; }
.hpt-account__two-columns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
.hpt-account__field { display: grid; gap: 7px; font-weight: 700; }
.hpt-account__field input { width: 100%; min-height: 48px; padding: 10px 13px; color: #102033; background: #fff; border: 2px solid transparent; border-radius: 9px; font: inherit; }
.hpt-account__field input:focus { outline: none; border-color: var(--hpt-account-accent); box-shadow: 0 0 0 3px rgba(45,212,191,.18); }
.hpt-account__field input[readonly] { background: #e7edf5; color: #45556b; cursor: not-allowed; }
.hpt-account__field small, .hpt-account__hint { color: var(--hpt-account-muted); font-weight: 400; font-size: .9rem; }
.hpt-account__check { display: flex; align-items: flex-start; gap: 9px; color: var(--hpt-account-muted); line-height: 1.55; }
.hpt-account__check input { width: 18px; height: 18px; margin-top: 3px; flex: 0 0 auto; accent-color: var(--hpt-account-accent); }
.hpt-account__check a { color: var(--hpt-account-accent); }
.hpt-account__trap { position: absolute !important; inset-inline-start: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }

.hpt-account__primary, .hpt-account__secondary { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; padding: 11px 20px; border-radius: 9px; font: inherit; font-weight: 800; text-decoration: none; cursor: pointer; transition: .18s ease; }
.hpt-account__primary { width: 100%; color: #062f2d; background: var(--hpt-account-accent); border: 1px solid var(--hpt-account-accent); }
.hpt-account__primary:hover { background: #5eead4; border-color: #5eead4; }
.hpt-account__secondary { color: var(--hpt-account-text); background: transparent; border: 1px solid var(--hpt-account-border); }
.hpt-account__secondary:hover { color: #062f2d; background: var(--hpt-account-accent); border-color: var(--hpt-account-accent); }

.hpt-account__notice { max-width: 760px; margin: 0 auto 20px; padding: 14px 17px; border-radius: 10px; border: 1px solid; font-weight: 700; line-height: 1.5; }
.hpt-account__notice.is-success { color: #d1fae5; background: rgba(6,95,70,.5); border-color: #34d399; }
.hpt-account__notice.is-error { color: #fee2e2; background: rgba(127,29,29,.5); border-color: #f87171; }
.hpt-account__selected-plan { max-width: 760px; display: flex; align-items: center; justify-content: space-between; gap: 24px; margin: 0 auto 22px; padding: 22px 24px; border: 1px solid rgba(45,212,191,.45); border-radius: 16px; background: linear-gradient(135deg, rgba(13,148,136,.18), rgba(15,23,42,.88)); }
.hpt-account__selected-plan h2, .hpt-account__selected-plan p { margin-bottom: 0; }
.hpt-account__selected-plan strong { flex: 0 0 auto; color: #ccfbf1; font-size: clamp(1.2rem, 2.6vw, 1.65rem); white-space: nowrap; }

.hpt-account__welcome { display: flex; justify-content: space-between; align-items: flex-end; gap: 28px; margin-bottom: 28px; }
.hpt-account__welcome p { margin-bottom: 0; }
.hpt-account__welcome form { flex: 0 0 auto; }
.hpt-account__dashboard-main { min-width: 0; }
.hpt-account__products { margin-bottom: 20px; padding: clamp(22px, 4vw, 34px); border: 1px solid var(--hpt-account-border); border-radius: 22px; background: rgba(15, 27, 44, .72); box-shadow: 0 24px 70px rgba(0,0,0,.16); }
.hpt-account__section-heading { max-width: 760px; }
.hpt-account__section-heading h2 { font-size: clamp(1.6rem, 3vw, 2.15rem); margin-bottom: 8px; }
.hpt-account__section-heading p { margin-bottom: 0; }
.hpt-account__product-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; margin: 18px 0; color: var(--hpt-account-muted); font-size: .92rem; }
.hpt-account__product-badge { display: inline-flex; padding: 5px 10px; border: 1px solid var(--hpt-account-border); border-radius: 999px; color: var(--hpt-account-text); font-weight: 750; }
.hpt-account__product-list { display: grid; gap: 18px; margin-top: 26px; }
.hpt-account__product-card { overflow: hidden; border: 1px solid var(--hpt-account-border); border-radius: 18px; background: linear-gradient(145deg, rgba(29,43,65,.92), rgba(12,24,40,.95)); }
.hpt-account__product-card-head { display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 22px 24px; border-bottom: 1px solid var(--hpt-account-border); }
.hpt-account__product-card-head h3 { margin: 3px 0 0; font-size: clamp(1.35rem, 2vw, 1.75rem); }
.hpt-account__product-label { color: var(--hpt-account-muted); font-size: .78rem; font-weight: 800; letter-spacing: .045em; text-transform: uppercase; }
.hpt-account[dir="rtl"] .hpt-account__product-label { letter-spacing: 0; text-transform: none; }
.hpt-account__product-details { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); margin: 0; padding: 0 24px; }
.hpt-account__product-details > div { min-width: 0; padding: 21px 16px; border-inline-end: 1px solid var(--hpt-account-border); }
.hpt-account__product-details > div:first-child { padding-inline-start: 0; }
.hpt-account__product-details > div:last-child { border-inline-end: 0; padding-inline-end: 0; }
.hpt-account__product-details dt { margin-bottom: 8px; color: var(--hpt-account-muted); font-size: .78rem; font-weight: 750; }
.hpt-account__product-details dd { margin: 0; color: var(--hpt-account-text); font-weight: 750; overflow-wrap: anywhere; }
.hpt-account__product-actions { display: flex; justify-content: flex-end; padding: 16px 24px; border-top: 1px solid var(--hpt-account-border); background: rgba(8,17,29,.34); }
.hpt-account__renewal-form { width: 100%; display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.hpt-account__renewal-help { color: var(--hpt-account-muted); line-height: 1.55; }
.hpt-account__renewal-form .hpt-account__table-action { padding: 9px 14px; border: 1px solid rgba(251,191,36,.48); border-radius: 8px; color: #fef3c7; background: rgba(120,53,15,.26); font: inherit; cursor: pointer; }
.hpt-account__renewal-form .hpt-account__table-action:hover, .hpt-account__renewal-form .hpt-account__table-action:focus-visible { border-color: #fbbf24; background: rgba(120,53,15,.48); }
.hpt-account__empty-state { padding: 28px; border: 1px dashed var(--hpt-account-border); border-radius: 16px; color: var(--hpt-account-muted); text-align: center; }
.hpt-account__status { display: inline-flex; align-items: center; min-height: 28px; padding: 4px 9px; border: 1px solid var(--hpt-account-border); border-radius: 999px; color: var(--hpt-account-muted); font-size: .82rem; font-weight: 750; white-space: nowrap; }
.hpt-account__status.is-active { color: #d1fae5; border-color: rgba(52, 211, 153, .55); background: rgba(6, 95, 70, .38); }
.hpt-account__status.is-expired, .hpt-account__status.is-revoked, .hpt-account__status.is-past_due { color: #fee2e2; border-color: rgba(248, 113, 113, .55); background: rgba(127, 29, 29, .35); }
.hpt-account__status.is-cancelled { color: #fef3c7; border-color: rgba(251, 191, 36, .5); background: rgba(120, 53, 15, .32); }
.hpt-account__table-action { color: var(--hpt-account-accent); font-weight: 750; white-space: nowrap; }
.hpt-account__muted { color: var(--hpt-account-muted); }
.hpt-account__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.hpt-account__status-card { min-width: 0; display: flex; gap: 14px; padding: 22px; border: 1px solid var(--hpt-account-border); border-radius: 16px; background: var(--hpt-account-panel); }
.hpt-account__status-card h2 { font-size: 1rem; margin-bottom: 8px; color: var(--hpt-account-muted); }
.hpt-account__status-card strong { display: block; margin-bottom: 7px; overflow-wrap: anywhere; }
.hpt-account__status-card p { margin-bottom: 0; font-size: .92rem; }
.hpt-account__status-icon { width: 42px; height: 42px; flex: 0 0 42px; display: grid; place-items: center; border-radius: 12px; background: rgba(45,212,191,.12); font-size: 1.35rem; }
.hpt-account__download { max-width: none; display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 24px 28px; }
.hpt-account__download p { margin-bottom: 0; }
.hpt-account__stack { display: grid; gap: 20px; }
.hpt-account__stack .hpt-account__panel { width: 100%; }
.hpt-account__action-panel { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.hpt-account__action-panel p { margin-bottom: 0; }
.hpt-account__action-panel form { flex: 0 0 auto; }
.hpt-account__danger-zone { border-color: rgba(248, 113, 113, .42); }
.hpt-account__danger { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; padding: 11px 20px; border: 1px solid #f87171; border-radius: 9px; color: #fff; background: #991b1b; font: inherit; font-weight: 800; cursor: pointer; transition: .18s ease; }
.hpt-account__danger:hover, .hpt-account__danger:focus-visible { background: #b91c1c; border-color: #fca5a5; }
.hpt-account__storage { margin: 26px 0; padding: 18px 20px; border: 1px solid var(--hpt-account-border); border-radius: 14px; background: rgba(8,17,29,.35); }
.hpt-account__storage > div:first-child { display: flex; justify-content: space-between; gap: 16px; margin-bottom: 11px; }
.hpt-account__storage small { display: block; margin-top: 9px; color: var(--hpt-account-muted); }
.hpt-account__storage-bar { height: 9px; overflow: hidden; border-radius: 999px; background: rgba(148,163,184,.2); }
.hpt-account__storage-bar span { display: block; height: 100%; min-width: 2px; border-radius: inherit; background: linear-gradient(90deg, #2dd4bf, #22d3ee); transition: width .2s ease; }
.hpt-account__gallery-form { display: grid; gap: 20px; margin-top: 24px; padding: 24px; border: 1px solid var(--hpt-account-border); border-radius: 18px; background: linear-gradient(145deg, rgba(29,43,65,.92), rgba(12,24,40,.95)); }
.hpt-account__gallery-form h3, .hpt-account__gallery-list h3 { margin: 0 0 7px; font-size: 1.25rem; }
.hpt-account__gallery-files { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 16px; }
.hpt-account__gallery-drop { display: grid; gap: 7px; min-height: 150px; padding: 18px; border: 1px dashed rgba(45,212,191,.55); border-radius: 14px; background: rgba(45,212,191,.055); cursor: pointer; }
.hpt-account__gallery-drop:hover, .hpt-account__gallery-drop:focus-within { border-color: var(--hpt-account-accent); background: rgba(45,212,191,.1); }
.hpt-account__gallery-drop span { color: var(--hpt-account-muted); line-height: 1.5; }
.hpt-account__gallery-drop input { align-self: end; width: 100%; color: var(--hpt-account-muted); }
.hpt-account__gallery-progress p { margin: 9px 0 0; }
.hpt-account__gallery-list { display: grid; gap: 12px; margin-top: 30px; }
.hpt-account__gallery-card { display: grid; grid-template-columns: minmax(0,1fr) minmax(260px,auto); align-items: center; gap: 18px 22px; padding: 18px 20px; border: 1px solid var(--hpt-account-border); border-radius: 14px; background: rgba(8,17,29,.34); }
.hpt-account__gallery-card h4 { margin: 0 0 5px; font-size: 1.05rem; }
.hpt-account__gallery-card p { margin: 0; }
.hpt-account__gallery-card small { display: block; margin-top: 5px; color: var(--hpt-account-muted); }
.hpt-account__gallery-card-actions { display: flex; flex-wrap: wrap; align-items: center; justify-content: flex-end; gap: 9px; }
.hpt-account__gallery-card-actions .hpt-account__secondary { min-height: 38px; padding: 7px 12px; }
.hpt-account__copy-link { font: inherit; cursor: pointer; }
.hpt-account__status.is-draft, .hpt-account__status.is-uploading { color: #cffafe; border-color: rgba(34,211,238,.48); background: rgba(14,116,144,.24); }

@media (max-width: 820px) {
  .hpt-account__grid { grid-template-columns: 1fr; }
  .hpt-account__welcome { align-items: flex-start; flex-direction: column; }
  .hpt-account__download { align-items: flex-start; flex-direction: column; }
  .hpt-account__action-panel { align-items: flex-start; flex-direction: column; }
  .hpt-account__selected-plan { align-items: flex-start; flex-direction: column; }
  .hpt-account__gallery-files { grid-template-columns: 1fr; }
  .hpt-account__gallery-card { align-items: flex-start; flex-direction: column; }
  .hpt-account__gallery-card-actions { justify-content: flex-start; }
  .hpt-account__product-details { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .hpt-account__product-details > div, .hpt-account__product-details > div:first-child, .hpt-account__product-details > div:last-child { padding: 16px; border: 0; border-bottom: 1px solid var(--hpt-account-border); }
}

@media (max-width: 560px) {
  .hpt-account { padding-inline: 16px; }
  .hpt-account__two-columns { grid-template-columns: 1fr; }
  .hpt-account__tabs { display: grid; grid-template-columns: 1fr; }
  .hpt-account__tab { width: 100%; }
  .hpt-account__panel { padding: 22px 18px; border-radius: 15px; }
  .hpt-account__welcome .hpt-account__secondary { width: 100%; }
  .hpt-account__welcome form { width: 100%; }
  .hpt-account__action-panel form, .hpt-account__action-panel .hpt-account__secondary, .hpt-account__danger { width: 100%; }
  .hpt-account__product-card-head { align-items: flex-start; flex-direction: column; padding: 20px; }
  .hpt-account__product-details { grid-template-columns: 1fr; padding: 0 20px; }
  .hpt-account__product-details > div, .hpt-account__product-details > div:first-child, .hpt-account__product-details > div:last-child { padding: 15px 0; }
  .hpt-account__product-details > div:last-child { border-bottom: 0; }
  .hpt-account__product-actions { justify-content: stretch; padding: 16px 20px; }
  .hpt-account__product-actions a { width: 100%; text-align: center; }
  .hpt-account__renewal-form { align-items: stretch; flex-direction: column; }
}

.hpt-account__gallery-link{display:grid;gap:5px;width:min(100%,520px);font-size:12px;color:var(--hpt-account-muted)}
.hpt-account__gallery-link input{width:100%;min-width:220px;border:1px solid var(--hpt-account-border);border-radius:9px;background:#f7fafc;padding:9px 10px;color:#243446}
.hpt-account__gallery-password-form{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin-top:2px;padding-top:14px;border-top:1px solid var(--hpt-account-border)}
.hpt-account__gallery-password-form label{display:grid;gap:5px;flex:1 1 260px;font-weight:700}
.hpt-account__gallery-password-form input{width:100%;border:1px solid var(--hpt-account-border);border-radius:9px;padding:10px 12px}
.hpt-account__gallery-password-form small{flex-basis:100%;color:var(--hpt-account-muted)}
.hpt-account__gallery-delete-form{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:10px;padding-top:12px;border-top:1px solid rgba(239,68,68,.22)}
.hpt-account__gallery-delete-form small{color:var(--hpt-account-muted);flex:1 1 280px}
.hpt-account__gallery-delete-form span{flex-basis:100%;color:var(--hpt-account-muted)}
.hpt-account__danger{min-height:38px;padding:8px 13px;border:1px solid rgba(248,113,113,.7);border-radius:9px;background:rgba(127,29,29,.18);color:#fecaca;font-weight:800;cursor:pointer}
.hpt-account__danger:hover,.hpt-account__danger:focus{background:rgba(185,28,28,.28);border-color:#f87171}
.hpt-account__danger:disabled{opacity:.55;cursor:wait}
.hpt-account__gallery-manager{grid-column:1/-1;display:grid;gap:12px;padding-top:14px;border-top:1px solid var(--hpt-account-border)}
.hpt-account__gallery-manage-toggle{justify-self:start}
.hpt-account__gallery-manage-panel{display:grid;gap:16px;padding:18px;border:1px solid var(--hpt-account-border);border-radius:14px;background:rgba(8,17,29,.48)}
.hpt-account__gallery-manage-panel[hidden]{display:none}
.hpt-account__gallery-manage-panel h5{margin:0;font-size:1.05rem}
.hpt-account__gallery-manage-panel p{margin:0}
.hpt-account__gallery-manage-panel hr{width:100%;margin:4px 0;border:0;border-top:1px solid var(--hpt-account-border)}
.hpt-account__gallery-manage-panel .hpt-account__primary{width:auto;justify-self:start}
.hpt-account__gallery-manage-status{min-height:1.5em;color:var(--hpt-account-muted)}
.hpt-account__gallery-file-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}
.hpt-account__gallery-file-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:12px;max-height:560px;overflow:auto;padding:2px}
.hpt-account__gallery-file{display:grid;gap:8px;padding:8px;border:2px solid transparent;border-radius:12px;background:rgba(29,43,65,.92);cursor:pointer;transition:.16s ease}
.hpt-account__gallery-file:hover,.hpt-account__gallery-file:focus-within{border-color:rgba(45,212,191,.55)}
.hpt-account__gallery-file.is-selected{border-color:var(--hpt-account-accent);background:rgba(13,148,136,.22)}
.hpt-account__gallery-file img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px;background:#0b1320}
.hpt-account__gallery-file>span{display:flex;align-items:center;gap:8px;min-width:0}
.hpt-account__gallery-file>span span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;color:var(--hpt-account-muted)}
.hpt-account__gallery-file input{width:18px;height:18px;flex:0 0 auto;accent-color:var(--hpt-account-accent)}

@media (max-width: 820px) {
  .hpt-account__gallery-card { grid-template-columns: 1fr; }
  .hpt-account__gallery-password-form { grid-column:1; width:100%; }
  .hpt-account__gallery-delete-form { grid-column:1; width:100%; }
  .hpt-account__gallery-manager { grid-column:1; width:100%; }
  .hpt-account__gallery-file-toolbar { align-items:flex-start; flex-direction:column; }
  .hpt-account__gallery-file-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
