/*
Theme Name: Polymaind
Theme URI: https://polymaind.hu
Author: POLYMAIND
Description: A Polymaind 2026-os weboldal egyedi témája a Design-terv alapján: főoldal, szolgáltatás-aloldalak, esettanulmányok, árkalkulátor, Tudástár (blog), kapcsolat és kilépési ablak. Elementor nélkül, tiszta kóddal.
Version: 1.3.0
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: polymaind
*/

:root{--pm-accent:#DAFD55}

/* --- A Design-terv stílusai --- */
body{margin:0;background:#F3F5EF;color:#242228;font-family:"DM Sans",ui-sans-serif,system-ui,sans-serif}
a{color:#193E2F}a:hover{color:#193E2F}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #0B8FD0;outline-offset:3px}
h1,h2,h3{text-wrap:balance}
@keyframes pmFlInL{from{transform:translateX(-140%) rotate(-24deg);opacity:0}}@keyframes pmFlInR{from{transform:translateX(140%) rotate(24deg);opacity:0}}@keyframes pmBob{50%{translate:0 -8px}}
.pm-tile:hover .pm-cap{opacity:1}
@media (prefers-reduced-motion:reduce){[data-pm-fl]{animation:none!important}}
@media (prefers-reduced-motion: no-preference){.pm-draw{animation:pmdraw 1.1s cubic-bezier(.16,1,.3,1) .3s backwards}.pm-lift{transition:transform .2s cubic-bezier(.16,1,.3,1)}.pm-lift:hover{transform:translateY(-3px)}}
.pm-draw{stroke-dasharray:420;stroke-dashoffset:0}
@keyframes pmdraw{from{stroke-dashoffset:420}to{stroke-dashoffset:0}}
a:focus-visible{outline:3px solid #0B8FD0;outline-offset:3px}
a:focus-visible,summary:focus-visible{outline:3px solid #0B8FD0;outline-offset:3px}
summary{cursor:pointer}
a:focus-visible,button:focus-visible{outline:3px solid #0B8FD0;outline-offset:3px}
@media (prefers-reduced-motion: no-preference){.pm-lift{transition:transform .2s cubic-bezier(.16,1,.3,1)}.pm-lift:hover{transform:translateY(-3px)}}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #0B8FD0;outline-offset:3px}
input[type=range]{accent-color:#242228;width:100%;height:28px;cursor:pointer}
.pm-rcpt{-webkit-mask:radial-gradient(circle 7px at 50% 100%,transparent 6.5px,#000 7px) 0 100%/18px 100% repeat-x;mask:radial-gradient(circle 7px at 50% 100%,transparent 6.5px,#000 7px) 0 100%/18px 100% repeat-x;filter:drop-shadow(0 18px 30px rgba(25,62,47,.16))}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #0B8FD0;outline-offset:3px}
input[type=checkbox],input[type=radio]{accent-color:#242228;width:18px;height:18px}
@media (prefers-reduced-motion: no-preference){
  .pm-pop{animation:pmpop .45s cubic-bezier(.16,1,.3,1) backwards}
  .pm-wave{animation:pmwave 2.4s ease-in-out .6s infinite;transform-origin:50% 90%}
}
@keyframes pmpop{from{transform:translateY(16px) scale(.97)}to{transform:none}}
@keyframes pmwave{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(3deg)}}
h1,h2{text-wrap:balance}
@media (prefers-reduced-motion: no-preference){
  .pm-draw{animation:pmdraw 1.1s cubic-bezier(.16,1,.3,1) .2s backwards}
  .pm-sticker{transition:transform .25s cubic-bezier(.16,1,.3,1)}
  .pm-sticker:hover{transform:rotate(0deg) scale(1.02)}
}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #0B8FD0;outline-offset:3px}

/* --- Kiegészítések a WordPress-hez --- */
*,*::before,*::after{box-sizing:border-box}
[hidden]{display:none!important}
img,video{max-width:100%}
.pm-skip{position:absolute;left:-9999px;top:8px;z-index:10000;background:#fff;color:#193E2F;padding:10px 14px;border-radius:6px}
.pm-skip:focus{left:8px}
.pm-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.pm-site{overflow-x:clip}
body.pm-modal-open{overflow:hidden}

/* Űrlap: választható címkék */
.pm-chip{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;min-height:44px;border:1.5px solid rgba(243,245,239,.35);font-weight:600;border-radius:6px 6px 16px 6px;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.pm-chip input{accent-color:#242228}
.pm-chip:has(input:checked){background:var(--pm-accent);border-color:var(--pm-accent);color:#193E2F}
.pm-chip--light{border-color:rgba(25,62,47,.25)}
.pm-chip--light:has(input:checked){background:#EEFEB8;border-color:#193E2F;color:inherit}
.pm-notice{margin:0;padding:12px 16px;border-radius:6px 6px 16px 6px;font-weight:600}
.pm-notice--ok{background:var(--pm-accent);color:#193E2F}
.pm-notice--err{background:#FCE5EF;color:#9E1B4F}

/* Szűrő- és fülgombok */
.pm-filter-btn{font:inherit;font-size:14px;font-weight:600;padding:10px 16px;min-height:44px;border:1.5px solid rgba(25,62,47,.3);background:transparent;color:#193E2F;border-radius:6px 6px 16px 6px;cursor:pointer;text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.pm-filter-btn[aria-pressed="true"],.pm-filter-btn[aria-selected="true"],.pm-filter-btn[aria-current="page"]{border-color:#193E2F;background:#242228;color:#F3F5EF;font-weight:700}
.pm-case[hidden]{display:none!important}

/* Kalkulátor */
.pm-seg{font:inherit;font-weight:600;font-size:15px;border:0;padding:10px 18px;min-height:44px;border-radius:6px 6px 16px 6px;background:transparent;color:#425650;cursor:pointer}
.pm-seg[aria-selected="true"]{font-weight:700;background:#242228;color:#F3F5EF}

/* Mobil menü: hamburger gomb + lenyíló panel */
.pm-burger{display:none}
@media (max-width:900px){
  .pm-burger{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;width:48px;height:48px;padding:12px;border:1.5px solid rgba(243,245,239,.35);border-radius:8px 8px 18px 8px;background:transparent;cursor:pointer}
  .pm-burger span{display:block;height:2px;width:100%;background:#F3F5EF;border-radius:2px;transition:transform .2s,opacity .2s}
  .pm-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .pm-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
  .pm-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .pm-nav{display:none!important;width:100%;flex-direction:column;align-items:stretch!important;gap:0!important;padding:8px 0 4px;border-top:1px solid rgba(243,245,239,.14)}
  .pm-nav.is-open{display:flex!important}
  .pm-nav a{padding:14px 4px!important;font-size:18px;border-bottom:1px solid rgba(243,245,239,.1);box-shadow:none!important}
  .pm-nav a[aria-current="page"]:not(:last-child){color:var(--pm-accent)!important}
  .pm-nav a:last-child{color:#193E2F!important}
  .pm-nav a:last-child{margin:16px 0 0!important;border-bottom:0;text-align:center;padding:16px!important}
}
/* A lebegő képek kis kijelzőn eltakarnák a szöveget */
@media (max-width:1559px){[data-pm-fl]{display:none!important}}
/* Széles kijelzőn a lebegő képek a tartalom melletti szabad sávba kerülnek, teljesen láthatóan */
[data-pm-fl][style*="left: -"]{left:max(28px,calc(50% - 640px - 150px))!important}
[data-pm-fl][style*="right: -"]{right:max(28px,calc(50% - 640px - 150px))!important}

/* Tudástár-cikk tartalma (a Gutenberg-blokkokra is) */
.pm-article{font-size:18px;line-height:1.75;color:#193E2F}
.pm-article>*{margin:0 0 22px}
.pm-article h2{margin:38px 0 22px;font-family:'Bricolage Grotesque',sans-serif;font-weight:600;font-size:clamp(26px,2.6vw,34px);line-height:1.2;color:#242228;scroll-margin-top:24px}
.pm-article h3{font-family:'Bricolage Grotesque',sans-serif;font-weight:600;font-size:22px;line-height:1.25;color:#242228}
.pm-article ul,.pm-article ol{padding-left:22px}
.pm-article li+li{margin-top:8px}
.pm-article img{max-width:100%;height:auto;border-radius:8px 8px 28px 8px}
.pm-article table{width:100%;border-collapse:collapse;font-size:16px;line-height:1.5;font-variant-numeric:tabular-nums}
.pm-article caption{text-align:left;font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:1.2px;color:#425650;padding-bottom:8px}
.pm-article thead tr{border-bottom:2px solid #193E2F}
.pm-article th{text-align:left;padding:10px 12px 10px 0}
.pm-article td{padding:12px 12px 12px 0;border-bottom:1px solid rgba(25,62,47,.14)}
.pm-article th:last-child,.pm-article td:last-child{text-align:right;padding-right:0}
.pm-article .wp-block-table{overflow-x:auto}
.pm-article blockquote{border-left:3px solid #193E2F;padding-left:18px;margin-left:0}
.pm-article details{border-bottom:1px solid rgba(25,62,47,.18);padding:16px 0;margin:0;font-size:17px}
.pm-article details summary{font-weight:700}
.pm-article details p{margin:10px 0 0;line-height:1.65}
.pm-article .pm-callout{background:#EEFEB8;border-radius:8px 8px 28px 8px;padding:24px 26px;font-size:16px;line-height:1.6}
.pm-article .pm-callout strong:first-child{display:block;font-family:'Bricolage Grotesque',sans-serif;font-size:20px;margin-bottom:8px}
.pm-article .pm-example{background:#FFFFFF;border:1px solid rgba(25,62,47,.14);border-radius:8px 8px 28px 8px;padding:22px 24px;font-size:16px;line-height:1.6}
.pm-article .pm-example::before{content:"példa";display:block;font-family:'Caveat Brush',cursive;font-size:23px;color:#5B2BE0;transform:rotate(-1.5deg);transform-origin:left;margin-bottom:6px}
.pm-article .pm-checklist{list-style:none;padding:0}
.pm-article .pm-checklist li{display:flex;gap:12px}
.pm-article .pm-checklist li::before{content:"✓";color:#193E2F;font-weight:700}
.pm-article .pm-cta{background:#242228;color:#F3F5EF;border-radius:10px 10px 36px 10px;padding:28px;display:flex;flex-wrap:wrap;gap:18px;align-items:center;justify-content:space-between}
.pm-article .pm-cta p{margin:0;font-family:'Bricolage Grotesque',sans-serif;font-weight:600;font-size:22px;line-height:1.25;max-width:22em}
.pm-article .pm-cta a{display:inline-flex;align-items:center;padding:14px 20px;min-height:48px;background:var(--pm-accent);color:#193E2F;font-weight:700;text-decoration:none;border-radius:8px 8px 22px 8px}
.pm-toc a{text-decoration:none;border-left:3px solid rgba(25,62,47,.15);padding-left:12px}
.pm-toc a.is-active{font-weight:700;border-left-color:#193E2F}

/* Egyszerű aloldal (jogi oldalak stb.) */
.pm-page-hero{position:relative;z-index:1;max-width:1280px;margin:0 auto;padding:24px clamp(16px,4vw,48px) 8px}
.pm-page-hero h1{margin:0;font-family:'Bricolage Grotesque','DM Sans',sans-serif;font-weight:600;font-size:clamp(32px,4vw,54px);line-height:1.1;letter-spacing:-.5px}
.pm-kicker{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:12px;letter-spacing:2px;color:var(--pm-accent);display:block;margin-bottom:14px}
.pm-content{max-width:760px;margin:0 auto;padding:56px clamp(16px,4vw,48px) 72px}

/* Videó- és posztfal: mobilon is kéthasábos masonry */
@media (max-width:600px){
  .pm-wall{columns:2!important;column-gap:10px!important}
  .pm-wall figure{margin-bottom:10px!important;border-radius:6px 6px 18px 6px!important}
  .pm-wall figure>span{font-size:9px!important;top:6px!important;left:6px!important;padding:3px 5px!important}
  .pm-wall .pm-cap{opacity:1!important;padding:24px 8px 8px!important;font-size:12px!important}
  .pm-wall .pm-cap small{font-size:8px!important;margin-bottom:2px!important}
}

/* Esettanulmányok: mobilon az első 4 után „Mutasd a többit is” */
.pm-case.pm-more-hidden{display:none!important}
.pm-more-btn{align-self:stretch;font:inherit;font-size:16px;font-weight:700;padding:14px 20px;min-height:52px;border:1.5px solid #193E2F;background:transparent;color:#193E2F;border-radius:8px 8px 24px 8px;cursor:pointer}
.pm-more-btn:hover{background:#242228;color:#F3F5EF}

/* Hosszú szavak ne lógjanak ki a dobozokból (magyar elválasztással) */
.pm-site h1,.pm-site h2,.pm-site h3,.pm-site strong,.pm-site dd{overflow-wrap:break-word;hyphens:auto;-webkit-hyphens:auto}
/* Keskeny kijelzőn a kéthasábos dobozok egymás alá kerülnek */
@media (max-width:480px){
  .pm-site [style*="grid-template-columns: repeat(2, minmax(0, 1fr))"]{grid-template-columns:minmax(0,1fr)!important}
}

/* Mobil finomítások */
@media (max-width:600px){
  .pm-burst{right:0!important;width:104px!important;height:104px!important;top:4px!important}
  /* Kalkulátor: bal oldalt a leírás (és az összeg), jobb oldalt a kapcsoló / csúszka */
  .pm-crow{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px 14px!important}
  .pm-cdesc{grid-column:1;grid-row:1}
  .pm-camt{grid-column:1;grid-row:2;text-align:left!important;font-size:12px!important;flex:none!important}
  .pm-cctrl{grid-column:2;grid-row:1 / span 2;flex:none!important;justify-content:flex-end;gap:8px!important}
  .pm-cctrl input[type=range]{width:116px}
  .pm-cctrl output{min-width:22px!important}
  .pm-cctrl [role=switch]{margin-left:0!important}
}
.pm-camt:empty{visibility:hidden}
@media (max-width:600px){.pm-camt:empty{display:none}}

/* Kerek avatarok ne nyomódjanak össze szűk helyen */
.pm-site img[style*="border-radius: 50%"],.pm-site span[style*="border-radius: 50%"]{flex-shrink:0}
.pm-site span[aria-hidden="true"][style="display: flex;"]{flex:none}
