/* IngatlanVitrin – Pénztár (a /root/sablonok/peztaroldal sablon alapján, ap- előtag). Mobilnézet és Stripe-elemek a fájl végén. */
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url('/assets/fonts/inter-latin-ext.woff2') format('woff2')}

body{margin:0;background:#F7F5F0}
a{color:#3F5443}
a:hover{color:#26332A}

.ap-page{font-family:'Inter',system-ui,sans-serif;color:#1F241E;background:#F7F5F0;width:100%;-webkit-font-smoothing:antialiased;padding:32px 20px 64px;box-sizing:border-box}
.ap-wrap{max-width:1040px;margin:0 auto;display:flex;flex-direction:column;gap:20px}

/* Vissza + cím */
.ap-back{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;font-size:13.5px;font-weight:600;color:#3F5443;text-decoration:none;min-height:32px}
.ap-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px}
.ap-head-titles{display:flex;flex-direction:column;gap:6px}
.ap-title{margin:0;font-size:26px;font-weight:700;letter-spacing:-0.4px;line-height:1.2;color:#1F241E}
.ap-sub{margin:0;font-size:14px;font-weight:500;color:#4F4D47}
.ap-note{display:inline-flex;align-items:center;gap:10px;padding:8px 14px;border-radius:999px;background:#F6EEDC;border:1px solid #E8D7B4;font-size:13px;color:#6E5220}
.ap-note strong{font-weight:600}

/* Kiválasztott csomag */
.ap-plan{background:#EAF0E7;border:1px solid #D7E2D0;border-radius:14px;padding:12px 12px 12px 18px;display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px}
.ap-plan-name{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.ap-plan-title{font-size:15px;font-weight:700;color:#1F241E}
.ap-plan-sub{font-size:13.5px;font-weight:500;color:#4F5A50}
.ap-plan-chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px;flex:1 1 auto}
.ap-chip{display:inline-flex;align-items:center;height:32px;padding:0 12px;border-radius:999px;background:#FFFFFF;border:1px solid #D7E2D0;font-size:12.5px;font-weight:600;color:#3F5443}
.ap-plan-edit{display:inline-flex;align-items:center;height:32px;padding:0 6px;font-size:13.5px;font-weight:600;color:#3F5443;text-decoration:none}

/* Két oszlop */
.ap-cols{display:flex;flex-wrap:wrap;align-items:flex-start;gap:20px}
.ap-main{flex:999 1 520px;min-width:0;display:flex;flex-direction:column;gap:20px}
.ap-card{background:#FFFFFF;border:1px solid #E6E1D6;border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:20px}
.ap-card-head{display:flex;flex-direction:column;gap:4px}
.ap-pay-head{display:flex;align-items:center;justify-content:space-between;gap:12px}
.ap-h2{margin:0;font-size:15px;font-weight:700;color:#1F241E}
.ap-card-sub{margin:0;font-size:13.5px;line-height:1.55;font-weight:500;color:#4F4D47}
.ap-secure{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 10px;border-radius:999px;background:#F2F4F0;border:1px solid #DDE3D8;font-size:12px;font-weight:600;color:#3F5443}

/* Vásárló típusa fülek */
.ap-tabs{display:inline-flex;align-self:flex-start;gap:4px;padding:4px;background:#F2F0EA;border-radius:999px}
.ap-tab{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 18px;border:0;border-radius:999px;cursor:pointer;font-family:'Inter',sans-serif;font-size:13.5px;font-weight:600;background:transparent;color:#6B6862}
.ap-tab:not(.is-active):hover{color:#1F241E}
.ap-tab.is-active{background:#3F5443;color:#FFFFFF}

/* Űrlaprács + mezők */
.ap-formgrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px 14px}
.ap-company-fields{grid-column:span 6;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:16px 14px}
.ap-fieldgroup{display:flex;flex-direction:column;gap:7px;min-width:0}
.ap-span6{grid-column:span 6}
.ap-col2{grid-column:span 2}
.ap-col4{grid-column:span 4}
.ap-label{font-size:13.5px;font-weight:600;color:#2B2A26}
.ap-field{height:40px;padding:0 12px;border:1px solid #DAD4C6;border-radius:10px;font-family:'Inter',sans-serif;font-size:14.5px;color:#1F241E;background:#FFFFFF;box-sizing:border-box;width:100%;transition:border-color .12s ease,box-shadow .12s ease}
.ap-field:focus{outline:none;border-color:#3F5443;box-shadow:0 0 0 3px rgba(63,84,67,.16)}
.ap-field::placeholder{color:#9A968D}
.ap-field--num{font-variant-numeric:tabular-nums}
.ap-field--card{padding:0 104px 0 12px;letter-spacing:0.3px}
.ap-field--coupon{flex:1 1 auto;min-width:0;height:36px;font-size:14px;text-transform:uppercase}

/* Fizetés kártyarész */
.ap-paygrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 14px}
.ap-cardwrap{position:relative}
.ap-cardbadges{position:absolute;right:10px;top:50%;transform:translateY(-50%);display:flex;gap:5px}
.ap-badge-visa,.ap-badge-mc{height:20px;padding:0 6px;border-radius:5px;font-size:10px;font-weight:700;display:inline-flex;align-items:center}
.ap-badge-visa{border:1px solid #D5DAEA;background:#F3F5FB;color:#1A2B6D;letter-spacing:0.4px}
.ap-badge-mc{border:1px solid #EBD9C7;background:#FBF4EC;color:#9A4A12}

/* Összegzés */
.ap-summary{flex:1 1 340px;min-width:0;position:sticky;top:24px;background:#FFFFFF;border:1px solid #E6E1D6;border-radius:16px;padding:24px;display:flex;flex-direction:column;gap:18px}
.ap-sumlist{margin:0;display:flex;flex-direction:column;gap:10px;font-size:14px;font-variant-numeric:tabular-nums}
.ap-sumrow{display:flex;justify-content:space-between;gap:12px}
.ap-sumlabel{font-weight:500;color:#4F4D47}
.ap-sumval{margin:0;font-weight:600;color:#1F241E}

/* Kupon */
.ap-coupon{padding-top:16px;border-top:1px solid #ECE8DE}
.ap-coupon-open{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0;border:0;background:transparent;cursor:pointer;font-family:'Inter',sans-serif;font-size:13.5px;font-weight:600;color:#3F5443}
.ap-coupon-form{display:flex;flex-direction:column;gap:7px}
.ap-coupon-row{display:flex;gap:8px}
.ap-btn{transition:background-color .12s ease}
.ap-ghost{flex:0 0 auto;height:36px;padding:0 14px;border-radius:10px;border:1px solid #DAD4C6;background:#FFFFFF;font-family:'Inter',sans-serif;font-size:13.5px;font-weight:600;color:#2B2A26;cursor:pointer}
.ap-ghost:hover{background:#F2F4F0}

/* Végösszeg + hozzájárulás */
.ap-total{display:flex;flex-direction:column;gap:6px;padding-top:16px;border-top:1px solid #ECE8DE}
.ap-total-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.ap-total-label{font-size:14px;font-weight:600;color:#1F241E}
.ap-total-value{font-size:26px;font-weight:700;letter-spacing:-0.5px;color:#1F241E;font-variant-numeric:tabular-nums}
.ap-total-cur{font-size:14px;font-weight:500;color:#6B6862}
.ap-total-meta{display:flex;justify-content:space-between;gap:12px;font-size:13px;font-weight:500;color:#55534D;font-variant-numeric:tabular-nums}
.ap-consent{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.55;font-weight:500;color:#4F4D47;cursor:pointer}
.ap-consent input{width:18px;height:18px;margin:1px 0 0;flex:0 0 18px;accent-color:#3F5443;cursor:pointer}
.ap-consent a{color:#3F5443;font-weight:600}

/* Hibaüzenet */
.ap-error{display:flex;gap:10px;align-items:flex-start;padding:12px 14px;border-radius:10px;background:#F8E7E2;border:1px solid #EBC7BC}
.ap-error svg{flex:0 0 18px;margin-top:1px}
.ap-error > div{display:flex;flex-direction:column;gap:2px}
.ap-error-title{font-size:13.5px;font-weight:600;color:#7A2A1C}
.ap-error-text{font-size:13px;font-weight:500;line-height:1.5;color:#8A3A2A}

/* Fizetés gomb */
.ap-pay{height:44px;width:100%;border:0;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:'Inter',sans-serif;font-size:14.5px;font-weight:600;cursor:pointer;background:#3F5443;color:#FFFFFF;transition:background-color .12s ease}
.ap-pay--off{background:#C9D1C8;color:#56604F;cursor:not-allowed}
.ap-pay--busy{gap:10px;background:#56705B;color:#FFFFFF;cursor:progress}
.ap-spin{animation:apspin .8s linear infinite}
@keyframes apspin{to{transform:rotate(360deg)}}
.ap-fineprint{margin:0;font-size:12.5px;line-height:1.6;font-weight:500;color:#55534D;text-align:center}

/* A fizetés hibás állapotban a kártyaszám-keret piros */
.ap-page.is-error .ap-field--card{border-color:#C9705C}

.is-hidden{display:none}

/* ---- Alkalmazás-kiegészítések (2026-10-18) ---- */
.ap-brand{display:inline-flex;align-items:center;gap:9px;text-decoration:none;color:#3F5443;font-family:Georgia,'Times New Roman',serif;font-size:19px}
.ap-brand img{width:28px;height:24px;object-fit:contain}
.ap-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px}
.ap-topbar .ap-login{font-size:13.5px;font-weight:600;color:#3F5443;text-decoration:none}
.ap-hint{margin:0;font-size:12.5px;line-height:1.5;font-weight:500;color:#6B6862}
.ap-ferr{margin:0;font-size:12.5px;line-height:1.45;font-weight:600;color:#A3412F}
.ap-field.is-invalid{border-color:#C9705C}
.ap-taxcheck{margin:0;font-size:12.5px;line-height:1.45;font-weight:600;display:flex;gap:6px;align-items:flex-start}
.ap-taxcheck.is-valid{color:#3F6B44}
.ap-taxcheck.is-warning{color:#9A6B1F}
.ap-taxcheck.is-muted{color:#6B6862;font-weight:500}
.ap-stripe{min-height:150px}
.ap-stripe-loading{display:flex;align-items:center;gap:10px;font-size:13.5px;color:#6B6862;min-height:120px}
.ap-coupon-applied{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:13.5px;font-weight:600;color:#3F5443}
.ap-coupon-applied button{border:0;background:transparent;font:inherit;font-weight:600;color:#6B6862;cursor:pointer;text-decoration:underline}
.ap-sumrow--discount .ap-sumlabel,.ap-sumrow--discount .ap-sumval{color:#3F6B44}
.ap-ferr--coupon{margin-top:2px}
.ap-test{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#EAF0E7;border:1px solid #D7E2D0;font-size:13px;color:#3F5443}
.ap-login-hint{margin:0;font-size:12.5px;font-weight:500;color:#6B6862}
.ap-login-hint a{font-weight:600}
.ap-mobilebar{display:none}

/* ---- Mobil (≤ 760 px): egy oszlop, az összegzés a végén, alul rögzített fizetés-sáv ---- */
@media (max-width:760px){
  .ap-page{padding:16px 16px 96px}
  .ap-wrap{gap:16px}
  .ap-title{font-size:22px}
  .ap-head{align-items:flex-start}
  .ap-note{border-radius:12px}
  .ap-plan{padding:12px 14px;flex-direction:column;align-items:flex-start}
  .ap-plan-chips{flex:0 0 auto}
  .ap-plan-edit{padding:0}
  .ap-cols{flex-direction:column;gap:16px}
  .ap-main,.ap-summary{flex:0 0 auto;width:100%}
  .ap-summary{position:static}
  .ap-card,.ap-summary{padding:18px;border-radius:14px}
  .ap-tabs{align-self:stretch}
  .ap-tab{flex:1 1 0;justify-content:center;padding:0 10px}
  .ap-formgrid{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px 10px}
  .ap-col2{grid-column:span 2}
  .ap-col4{grid-column:span 4}
  .ap-field{height:44px;font-size:16px}
  .ap-total-value{font-size:24px}
  .ap-mobilebar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:30;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px calc(10px + env(safe-area-inset-bottom));background:#FFFFFF;border-top:1px solid #E6E1D6;box-shadow:0 -6px 20px rgba(31,36,30,.06)}
  .ap-mobilebar-total{display:flex;flex-direction:column;line-height:1.2}
  .ap-mobilebar-total small{font-size:12px;font-weight:500;color:#6B6862}
  .ap-mobilebar-total strong{font-size:18px;font-weight:700;color:#1F241E;font-variant-numeric:tabular-nums}
  .ap-mobilebar a{display:inline-flex;align-items:center;height:42px;padding:0 18px;border-radius:10px;background:#3F5443;color:#FFFFFF;font-size:14.5px;font-weight:600;text-decoration:none}
}

/* Az elrejtés minden komponensnél nyerjen (a később definiált display-szabályok ellen). */
.is-hidden{display:none!important}
