/* Gazdálkodási napló – stílusok. Betűtípus: Inter (SIL Open Font License), helyben */
@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/inter-latin-ext.woff2) format('woff2');
  unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Inter;font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/inter-latin.woff2) format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--ink:#17211c;--mut:#58635c;--bg:#f4f5f0;--card:#fff;--soft:#eef1ea;--line:#e3e7df;--g:#2f6f4b;--g2:#245a3c;--gs:#e4f0e8;--out:#b86e12;--outs:#fbefdc;--neg:#c0392b;--negs:#fbe6e3;--hv:#3d64a8;--hvs:#e5ecf8;
  --sh:0 1px 2px rgb(20 30 25/.05),0 6px 20px -8px rgb(20 30 25/.08);--r:14px;--on:#fff;--on2:#fffc;--tb:#1d2621;--tf:#fff;--ta:#9be0b4;--pos:#2f6f4b;--poss:#e4f0e8;--rowh:#f6f7f3;--grp:#e3efe6;--grpt:#245a3c;--avg:#aab3ad;--c-k:#cc8016;--c-b:#1e7346;--s1:#2a78d6;--s2:#eb6834;--s3:#1baf7a;--s4:#eda100;--s5:#e87ba4;--s6:#008300;--s7:#6250d6;--s8:#e34948;color-scheme:light}
/* Sötét mód: automatikusan az eszköz szerint, vagy kézzel (data-theme a <html>-en) */
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--ink:#e7ede9;--mut:#a8b4ac;--bg:#111613;--card:#19201c;--soft:#222b26;--line:#2a3530;--g:#6cc28c;--g2:#86d3a2;--gs:#1f3428;--out:#e8a54b;--outs:#3a2d1b;--neg:#f0857a;--negs:#3d2220;--hv:#8fb0ec;--hvs:#202c42;--sh:0 1px 2px #0004;--on:#0d1a12;--on2:#0d1a12b0;--tb:#e7ede9;--tf:#111;--ta:#2f6f4b;--pos:#6cc28c;--poss:#1f3428;--rowh:#1f2622;--grp:#1e3327;--grpt:#86d3a2;--avg:#5c6862;--c-k:#c4821f;--c-b:#2a7d4c;--s1:#3987e5;--s2:#d95926;--s3:#199e70;--s4:#c98500;--s5:#d55181;--s6:#008300;--s7:#9085e9;--s8:#e66767;color-scheme:dark}}
:root[data-theme=dark]{--ink:#e7ede9;--mut:#a8b4ac;--bg:#111613;--card:#19201c;--soft:#222b26;--line:#2a3530;--g:#6cc28c;--g2:#86d3a2;--gs:#1f3428;--out:#e8a54b;--outs:#3a2d1b;--neg:#f0857a;--negs:#3d2220;--hv:#8fb0ec;--hvs:#202c42;--sh:0 1px 2px #0004;--on:#0d1a12;--on2:#0d1a12b0;--tb:#e7ede9;--tf:#111;--ta:#2f6f4b;--pos:#6cc28c;--poss:#1f3428;--rowh:#1f2622;--grp:#1e3327;--grpt:#86d3a2;--avg:#5c6862;--c-k:#c4821f;--c-b:#2a7d4c;--s1:#3987e5;--s2:#d95926;--s3:#199e70;--s4:#c98500;--s5:#d55181;--s6:#008300;--s7:#9085e9;--s8:#e66767;color-scheme:dark}
*{box-sizing:border-box}
body{margin:0;font:15px/1.5 Inter,"Segoe UI Variable","Segoe UI",system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--ink);display:flex;min-height:calc(100vh / var(--z,1));zoom:var(--z,1);-webkit-font-smoothing:antialiased}
button{font:inherit;color:inherit}
.ic{flex:none;display:block}

/* Navigáció */
nav{width:236px;padding:22px 14px;position:sticky;top:0;height:calc(100vh / var(--z,1));flex:none;display:flex;flex-direction:column;gap:4px;border-right:1px solid var(--line);background:var(--card)}
.brand{display:flex;align-items:center;gap:10px;margin:0 8px 24px}
.brand i{width:36px;height:36px;border-radius:10px;background:var(--g);color:var(--on);display:grid;place-items:center}
.brand b{display:block;font-size:15.5px;line-height:1.2}.brand small{color:var(--mut);font-size:12px}
.nv{display:flex;align-items:center;gap:11px;width:100%;text-align:left;border:0;background:none;padding:10px 12px;border-radius:10px;cursor:pointer;color:var(--mut);font-weight:500}
.nv:hover{background:var(--soft);color:var(--ink)}.nv.on{background:var(--gs);color:var(--g);font-weight:600}
.nav-foot{margin-top:auto;display:grid;gap:8px}
.nav-foot .hint{padding:0 8px}

main{flex:1;padding:30px clamp(16px,3.4vw,48px) 60px;max-width:1560px;min-width:0;margin:0 auto}
h2{margin:0;font-size:24px;letter-spacing:-.4px}h3{margin:0;font-size:15px}
.top{display:flex;justify-content:space-between;align-items:center;gap:12px 16px;flex-wrap:wrap;margin-bottom:20px}
.top p{margin:2px 0 0;color:var(--mut);font-size:13.5px}.top-act{display:flex;gap:8px}

/* Gombok */
.btn{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:10px;padding:9px 15px;cursor:pointer;border:1px solid transparent;font-weight:600;font-size:14px;white-space:nowrap;transition:background .15s,border-color .15s}
[hidden]{display:none!important}
.btn.p{background:var(--g);color:var(--on)}.btn.p:hover{background:var(--g2)}
.btn.s{background:var(--card);border-color:var(--line);color:var(--ink)}.btn.s:hover{border-color:var(--mut)}
.btn.d{background:none;color:var(--neg);padding-left:6px;padding-right:6px}.btn.d:hover{background:var(--negs)}
.ib{border:0;background:none;cursor:pointer;color:var(--mut);padding:7px;border-radius:8px;display:inline-grid;place-items:center}
.ib:hover{background:var(--soft);color:var(--ink)}.ib.del:hover{background:var(--negs);color:var(--neg)}
.link{border:0;background:none;color:var(--g);font-weight:600;cursor:pointer;padding:0;font-size:13.5px}.link:hover{text-decoration:underline}
:focus-visible{outline:2px solid var(--g);outline-offset:2px}

/* Kártyák, KPI */
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:18px 20px;margin-bottom:18px;box-shadow:var(--sh);min-width:0}
.card.flush{padding:0;overflow:hidden;overflow:clip}
.card-h{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}
.grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:18px}.grid2>.card{margin:0}.grid2{margin-bottom:18px}
.kpi{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-bottom:18px}
.kc{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:15px 18px;box-shadow:var(--sh)}
.kc span{color:var(--mut);font-size:13px;font-weight:500}.kc small{display:block;color:var(--mut);font-size:12.5px;margin-top:2px}
.kc b{display:block;font-size:25px;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:-.6px;margin-top:3px;line-height:1.2}
.kc.res{background:var(--g);border-color:var(--g);color:var(--on)}.kc.res span,.kc.res small{color:var(--on2)}
.kc.res.neg{background:var(--neg);border-color:var(--neg)}

/* Szegmentált választó */
.seg{display:inline-flex;background:var(--soft);border:1px solid var(--line);border-radius:11px;padding:3px;gap:2px;overflow-x:auto;max-width:100%;scrollbar-width:none}
.seg>button,.seg>label>span{display:block;border:0;background:none;padding:6px 13px;border-radius:8px;font-size:13.5px;font-weight:500;color:var(--mut);cursor:pointer;white-space:nowrap}
.seg>button:hover,.seg>label:hover>span{color:var(--ink);background:var(--card)}
/* az aktív elem teli, a színséma színével – jól elüt a többitől */
.seg>button.on,.seg input:checked+span{background:var(--g);color:var(--on);font-weight:600;box-shadow:0 1px 3px rgb(0 0 0/.18)}
.seg input{position:absolute;opacity:0;pointer-events:none}.seg input:focus-visible+span{outline:2px solid var(--g)}
.seg.full{display:flex}.seg.full>label{flex:1;text-align:center}
.seg.type input[value=k]:checked+span{background:var(--out);color:var(--card)}.seg.type input[value=b]:checked+span{background:var(--pos);color:var(--card)}.seg.type input[value=t]:checked+span{background:var(--hv);color:var(--card)}

/* Diagramok */
.yrs{display:grid;gap:12px}
.yr{display:grid;grid-template-columns:46px 1fr auto;gap:12px;align-items:center;border:0;background:none;padding:4px 6px;margin:0 -6px;border-radius:8px;cursor:pointer;text-align:left}
.yr:hover{background:var(--soft)}.yr.on{background:var(--gs)}
.yb i{display:block;height:9px;border-radius:5px;width:var(--w);min-width:2px;margin:3px 0;transition:width .4s}
.b-k{background:var(--c-k)}.b-b{background:var(--c-b)}
.legend{display:flex;gap:16px;margin-top:14px;font-size:12.5px;color:var(--mut)}.legend i{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:6px;vertical-align:-1px}
.chip{font-size:12.5px;font-weight:600;padding:2px 9px;border-radius:99px;font-variant-numeric:tabular-nums;white-space:nowrap}
.chip.pos{background:var(--poss);color:var(--pos)}.chip.neg{background:var(--negs);color:var(--neg)}
.brk{display:grid;gap:11px}
.br-l{display:flex;justify-content:space-between;gap:10px;font-size:13.5px;margin-bottom:4px}.br-l b{font-variant-numeric:tabular-nums;font-weight:600}.br-l em{color:var(--mut);font-style:normal;font-weight:400;margin-left:6px}
.track{height:7px;border-radius:4px;background:var(--soft);overflow:hidden}.track i{display:block;height:100%;border-radius:4px;background:var(--c-k)}

/* Táblázatok */
.tw{overflow-x:auto;margin:0 -20px;padding:0 20px}
table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
th,td{padding:10px 12px;text-align:right;border-bottom:1px solid var(--line);white-space:nowrap}
th{color:var(--mut);font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.4px}
th:first-child,td:first-child,.l{text-align:left}tbody tr:last-child td{border-bottom:0}
tfoot td{font-weight:700;border-top:1px solid var(--line);border-bottom:0}
.neg{color:var(--neg)}.pos{color:var(--pos)}.mut{color:var(--mut)}
.tag{display:inline-block;font-size:12.5px;font-weight:500;padding:2px 9px;border-radius:99px;background:var(--poss);color:var(--pos);white-space:nowrap}
.tag.k{background:var(--outs);color:var(--out)}.tag.t{background:var(--hvs);color:var(--hv)}
.hint{font-size:12.5px;color:var(--mut);margin:12px 0 0}

/* Tétellista */
.flt{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:14px}
.search{position:relative;flex:1 1 260px;display:block}.search .ic{position:absolute;left:11px;top:50%;transform:translateY(-50%);color:var(--mut)}
.search input{width:100%;padding-left:34px}
select,input,textarea{font:inherit;font-size:14.5px;color:var(--ink);background:var(--card);border:1px solid var(--line);border-radius:10px;padding:8px 11px;max-width:100%;min-height:40px}
select:hover,input:hover{border-color:color-mix(in srgb,var(--mut) 50%,var(--line))}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--g);box-shadow:0 0 0 3px var(--gs)}
input[type=checkbox],input[type=radio]{min-height:0;padding:0;width:auto;border-radius:3px;accent-color:var(--g);box-shadow:none}
input[type=checkbox]:focus-visible{box-shadow:none;outline:2px solid var(--g);outline-offset:2px}
input[readonly]{background:var(--soft);color:var(--mut)}
/* Tételek: összesítő kártyák a szűrt listához */
.sumk{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) minmax(0,.6fr);gap:10px;margin-bottom:14px}
.sk{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--line);border-radius:12px;padding:10px 14px;box-shadow:var(--sh);min-width:0}
.sk span{display:block;font-size:12.5px;color:var(--mut);font-weight:500}.sk b{display:block;font-size:20px;font-weight:700;letter-spacing:-.4px;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sk-k{border-left-color:var(--c-k)}.sk-b{border-left-color:var(--c-b)}.sk-b b{color:var(--pos)}.sk-t{border-left-color:var(--hv)}
.sk-r{background:var(--g);border-color:var(--g);color:var(--on)}.sk-r span{color:var(--on2)}.sk-r.neg{background:var(--neg);border-color:var(--neg)}
.sk-n b{color:var(--mut)}
.ent th:nth-child(-n+4),.ent th:nth-child(8){text-align:left}.ent td{vertical-align:middle}.ent tbody tr{cursor:pointer;transition:background .1s}.ent tbody tr:hover{background:var(--rowh)}.ent tbody tr:not(.grp):hover>td:first-child{box-shadow:inset 3px 0 0 var(--g)}
.ent tr.grp{cursor:default}.ent tr.grp:hover{background:none}.ent tr.grp td{background:var(--grp);padding:10px 16px 10px 20px;border-top:2px solid var(--card);box-shadow:inset 4px 0 0 var(--g)}
.grp-in{display:flex;align-items:baseline;gap:6px 14px;flex-wrap:wrap}.grp-y{font-size:16px;font-weight:700;color:var(--grpt);letter-spacing:-.2px}
.grp-n{font-size:12.5px;color:var(--mut)}.grp-sum{margin-left:auto;font-size:13px;color:var(--mut);font-variant-numeric:tabular-nums}.grp-sum b{color:var(--ink);font-weight:600}.grp-sum b.pos{color:var(--pos)}.grp-sum b.neg{color:var(--neg)}
.ent th:first-child,.ent td:first-child{padding-left:20px}.ent th:last-child,.ent td:last-child{padding-right:12px}
.c-d small.offy{display:block;font-size:11.5px;color:var(--out);font-weight:500}
.c-price b{font-size:15px;font-weight:600}.c-amt .pu{color:var(--mut);font-size:12px;font-weight:500}.c-price .pu{color:var(--mut);font-size:12.5px}.c-price small{display:block;color:var(--mut);font-size:11.5px}.m-only{display:none}
.c-qty small,.c-amt small{display:block;color:var(--mut);font-size:12px}
.c-amt{font-weight:600}.c-note{max-width:220px;overflow:hidden;text-overflow:ellipsis;color:var(--mut)}
.c-mob{display:none}.c-act{width:1%}.acts{display:flex;gap:2px;justify-content:flex-end}
@media(hover:hover){.ent .acts{opacity:.25;transition:opacity .15s}.ent tr:hover .acts,.ent .acts:focus-within{opacity:1}}
.empty{color:var(--mut);padding:44px 20px;text-align:center}.empty b{display:block;color:var(--ink);font-size:16px;margin-bottom:4px}

/* Parcellák */
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.pc{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:18px 20px;box-shadow:var(--sh);display:flex;flex-direction:column;gap:12px}
.pc-h{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.pc-h h3{font-size:16.5px}.pc-h .mut{font-size:13px}
.pc-area b{font-size:28px;letter-spacing:-.8px;font-variant-numeric:tabular-nums}.pc-area span{color:var(--mut);margin-left:4px}

.pc .note{margin:0;font-size:13.5px;color:var(--mut)}.pc .link{margin-top:auto;align-self:flex-start}
.pc.add{border:2px dashed var(--line);box-shadow:none;background:none;align-items:center;justify-content:center;cursor:pointer;color:var(--mut);font-weight:600;min-height:180px}
.pc.add:hover{border-color:var(--g);color:var(--g)}

/* Kezdő képernyő */
.hero{max-width:640px;margin:6vh auto;text-align:center}
.hero-ic{width:60px;height:60px;border-radius:18px;background:var(--gs);color:var(--g);display:grid;place-items:center;margin:0 auto 18px}
.hero p{color:var(--mut);margin:8px 0 26px}
.steps{list-style:none;padding:0;margin:0;display:grid;gap:12px;text-align:left;counter-reset:s}
.steps li{display:flex;align-items:center;gap:14px;background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:16px 18px;box-shadow:var(--sh);counter-increment:s}
.steps li::before{content:counter(s);flex:none;width:32px;height:32px;border-radius:50%;background:var(--soft);display:grid;place-items:center;font-weight:700;color:var(--mut)}
.steps li.done::before{content:"✓";background:var(--g);color:var(--on)}
.steps div{flex:1}.steps span{display:block;color:var(--mut);font-size:13.5px}

/* Párbeszédablak */
dialog{border:0;border-radius:18px;padding:0;overflow-x:hidden;width:min(600px,94vw);max-height:calc(92vh / var(--z,1));background:var(--card);color:var(--ink);box-shadow:0 24px 70px #0006}
dialog::backdrop{background:rgb(10 16 12/.5);backdrop-filter:blur(2px)}
dialog[open]{animation:pop .18s ease-out}@keyframes pop{from{opacity:0;transform:translateY(10px) scale(.98)}}
form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;padding:22px 24px}
form label{min-width:0}form label>input,form label>select{width:100%;min-width:0}
.dlg-h{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;margin:-4px -8px 0 0}.dlg-h h3{font-size:18px}
label{display:grid;gap:5px;font-size:13px;font-weight:500;color:var(--mut);align-content:start}
.w,.act,.err{grid-column:1/-1}
.calc{grid-column:1/-1;display:grid;grid-template-columns:1fr 110px 1fr;gap:12px;background:var(--soft);border-radius:12px;padding:14px;border:0;margin:0}
.calc label{min-width:0}.calc input,.calc select{width:100%;background:var(--card)}.calc input[readonly]{background:var(--soft);border-style:dashed}
.calc-out{grid-column:1/-1;font-size:13px;color:var(--mut)}.calc-out b{color:var(--ink);font-size:15px}
form.ty-t .money{display:none}form.ty-t .calc{grid-template-columns:1fr 110px}
.err{color:var(--neg);font-size:13px;font-weight:500}.err:empty{display:none}
.act{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;align-items:center;border-top:1px solid var(--line);margin-top:4px;padding-top:16px}
.act .sp{flex:1}

/* Értesítések */
#toasts{position:fixed;inset:auto auto 24px 50%;margin:0;padding:0;border:0;background:none;overflow:visible;transform:translateX(-50%);display:grid;gap:8px;z-index:50;width:max-content;max-width:92vw}
#toasts[popover]:not(:popover-open){display:none}
.toast{display:flex;align-items:center;gap:16px;background:var(--tb);color:var(--tf);padding:11px 14px 11px 18px;border-radius:12px;box-shadow:0 10px 30px #0004;font-size:14px;animation:tin .2s ease-out}
.toast.err{background:var(--neg);color:var(--on);font-size:14px;font-weight:500}.toast button{border:0;background:none;color:var(--ta);font-weight:700;cursor:pointer;padding:2px 4px}
.toast.out{opacity:0;transform:translateY(8px);transition:.3s}@keyframes tin{from{opacity:0;transform:translateY(8px)}}
.fab{display:none}
.btn.sm{padding:6px 11px;font-size:13px}#bk .acts{gap:6px}
.login{display:grid;place-items:center;min-height:100vh;padding:20px!important;max-width:none}
.login-card{display:grid;grid-template-columns:1fr!important;gap:14px;width:min(400px,100%);background:var(--card);border:1px solid var(--line);border-radius:18px;padding:30px 28px!important;box-shadow:var(--sh)}
.login-card h2{text-align:center}.login-card p{margin:-6px 0 4px;text-align:center;color:var(--mut);font-size:14px}
.login-card .hero-ic{margin:0 auto 4px}.login-card .btn{width:100%;padding:11px}.login-card .hint{text-align:center;margin:4px 0 0}
.newcat{display:flex;gap:8px}.newcat input{flex:1;min-width:0}
.catlist{display:grid;gap:14px}.catlist h4{margin:0 0 6px;font-size:12px;text-transform:uppercase;letter-spacing:.4px;color:var(--mut)}
.chips{display:flex;flex-wrap:wrap;gap:6px}.chips .tag{display:inline-flex;align-items:center;padding:0}
.chips .tag button{border:0;background:none;color:inherit;font:inherit;cursor:pointer}.chips .cn{padding:2px 4px 2px 10px}.chips .cn:hover{text-decoration:underline}
.chips .x{padding:2px 9px 2px 3px;font-size:15px!important;line-height:1;opacity:.6}.chips .x:hover{opacity:1}
.chips em{font-style:normal;font-size:11px;opacity:.65;padding:2px 9px 2px 3px}.chips .tag.on{box-shadow:0 0 0 2px currentColor}

/* Grafikonok */
.chart{width:100%;min-height:200px;margin-top:6px}.chart svg{display:block;overflow:visible}
.chart text{font:11.5px Inter,system-ui,sans-serif;fill:var(--mut)}.chart .dl{fill:var(--ink);font-weight:600}
.chart .grid{stroke:var(--line);stroke-width:1}.chart .base{stroke:var(--mut);stroke-opacity:.5}
.chart .hit{fill:transparent;cursor:crosshair}.chart .hit:hover{fill:var(--soft)}.chart .mk{pointer-events:none}
.legend .ln{display:inline-block;width:14px;height:3px;border-radius:2px;margin-right:6px;vertical-align:3px}
.tview{margin-top:10px;font-size:13px}.tview summary{cursor:pointer;color:var(--mut);font-weight:500}.tview summary:hover{color:var(--ink)}.tview .tw{margin-top:8px}
#tip{position:fixed;z-index:60;pointer-events:none;background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:8px 11px;font-size:12.5px;line-height:1.55;box-shadow:0 8px 24px rgb(0 0 0/.14);max-width:260px;font-variant-numeric:tabular-nums}
#tip b{display:block;margin-bottom:2px}#tip i{display:inline-block;width:9px;height:9px;border-radius:3px;margin-right:6px;vertical-align:-1px}#tip span{float:right;margin-left:14px;font-weight:600}

/* Nyitott tételek, fizetési állapot */
.open-sum{display:flex;gap:12px 32px;flex-wrap:wrap;margin-bottom:10px}.open-sum span{display:block;font-size:12.5px;color:var(--mut)}
.open-sum b{font-size:20px;letter-spacing:-.4px;font-variant-numeric:tabular-nums}.open-sum small{color:var(--mut);margin-left:6px}
.ol{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;gap:12px;align-items:center;padding:9px 0;border-top:1px solid var(--line);font-size:13.5px}
.ol>.mut:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ol b{font-variant-numeric:tabular-nums;text-align:right;min-width:64px}
.c-amt small.open{color:var(--out);font-weight:500}.c-amt small.late{color:var(--neg);font-weight:600}.ib.pay{color:var(--g)}.ib.pay:hover{background:var(--gs);color:var(--g)}
.paybox{display:flex;gap:10px 18px;align-items:flex-end;flex-wrap:wrap}.paybox .chk{align-items:center;min-height:40px}.paybox .chk input{margin:0}.paybox .due-l{flex:1 1 220px}
/* Sablonok */
.tpls{align-items:center}.tpl-h{font-size:12.5px;color:var(--mut);margin-right:2px}.tpls .tag{background:var(--soft);color:var(--ink)}.tpls .tag.on{box-shadow:0 0 0 2px var(--g)}
.tpl-link{display:inline-flex;align-items:center;gap:6px;justify-self:start;font-size:13px}

/* Figyelmeztető sávok, adatellenőrzés */
.duebar{display:flex;gap:12px;align-items:center;background:var(--outs);border-radius:var(--r);padding:12px 16px;margin-bottom:14px}
.duebar>.ic{color:var(--out)}.duebar.late{background:var(--negs)}.duebar.late>.ic{color:var(--neg)}.duebar.info{background:var(--hvs)}.duebar.info>.ic{color:var(--hv)}
.duebar>div{flex:1;min-width:0}.duebar span{display:block;font-size:13px;color:var(--mut);margin-top:1px}
.tipbar{display:flex;gap:10px;align-items:center;font-size:13.5px;color:var(--mut);margin:-4px 0 14px;padding:0 4px}.tipbar>span{flex:1}
.idsbar{display:flex;gap:10px;align-items:center;background:var(--gs);border-radius:12px;padding:10px 14px;margin-bottom:12px;font-size:14px}.idsbar>span{flex:1}.idsbar>.ic{color:var(--g)}
.issues{list-style:none;margin:0;padding:0}.issues li{display:flex;gap:10px;align-items:center;padding:9px 0;border-top:1px solid var(--line);font-size:14px}
.issues li:first-child{border-top:0;padding-top:2px}.issues li>.ic{color:var(--out)}.issues li>span{flex:1}.issues .link{white-space:nowrap}
.clip{display:inline-flex;align-items:center;gap:2px;margin-left:6px;color:var(--mut);font-size:12px;vertical-align:middle}
small.sub{display:block;font-size:11.5px;color:var(--mut);font-weight:400}
/* Időjárás, csapadék */
.wx{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.wx-now{display:flex;align-items:center;gap:10px;min-width:200px}
.wx-i{font-size:36px;line-height:1}.wx-now>b{font-size:30px;letter-spacing:-.8px}.wx-now small{color:var(--mut);font-size:12.5px;line-height:1.4}
.wx-days{flex:1;display:grid;grid-template-columns:repeat(7,minmax(62px,1fr));gap:6px;overflow-x:auto}
.wx-d{display:flex;flex-direction:column;align-items:center;gap:1px;background:var(--soft);border-radius:12px;padding:8px 4px;font-size:12.5px;font-variant-numeric:tabular-nums}
.wx-d>span{color:var(--mut);font-weight:600;text-transform:capitalize}.wx-d>i{font-style:normal;font-size:22px;line-height:1.3}.wx-d>small{color:var(--mut)}
.wx-d>em{font-style:normal;color:var(--mut);font-size:11.5px}.wx-d>em.wet{color:var(--s1);font-weight:600}
.rain{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.rain h4{margin:0 0 8px;font-size:13px}
.rn{display:grid;grid-template-columns:44px minmax(60px,1fr) 92px 172px;gap:10px;align-items:center;font-size:13px;margin-bottom:6px;font-variant-numeric:tabular-nums}
.rn .track{position:relative;overflow:visible}.rn .track i{background:var(--s1)}.rn .avgm{position:absolute;top:-4px;bottom:-4px;width:2px;margin-left:-1px;background:var(--ink);opacity:.55;border-radius:1px}
.wxset{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin:14px 0 12px}
.hint a,.card-h a{color:var(--g);font-weight:600}.rn>span{font-weight:600;min-width:64px;text-align:right}.rn em{font-style:normal;font-weight:400;color:var(--mut)}.rn small{color:var(--mut);min-width:96px;text-align:right}
.locr{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0}.locr .btn small{margin-left:6px;font-weight:400}
/* Permetezési napló, APIA-lista */
.spr th,.spr td{text-align:left}.spr td{vertical-align:top}.spr tbody tr{cursor:pointer}.spr tbody tr:hover{background:var(--rowh)}.spr tbody tr:hover>td:first-child{box-shadow:inset 3px 0 0 var(--g)}
.spr td small{display:block;color:var(--mut);font-size:12px;font-weight:400}.spr .c-pest{white-space:normal;min-width:120px}.spr td.warn{color:var(--out);font-weight:600}.spr .c-note{white-space:normal;min-width:0;max-width:200px}.spr th,.spr td{padding-left:10px;padding-right:10px}
.spr th:first-child,.spr td:first-child{padding-left:20px}
.apia th,.apia td{text-align:left}.apia th:nth-child(6),.apia td:nth-child(6){text-align:right}.apia .link{font-size:14px}
.plan{min-height:34px;padding:5px 9px;width:170px;font-size:14px}.only-print{display:none}
/* Csatolmányok */
.att{display:grid;gap:8px}.att-h{font-size:13px;font-weight:500;color:var(--mut)}.att-list{display:flex;flex-wrap:wrap;gap:8px}.att-list:empty{display:none}
.att-t{position:relative;display:flex;flex-direction:column;width:96px;font-size:11.5px;color:var(--mut)}
.att-t img,.att-t i{display:grid;place-items:center;width:96px;height:72px;object-fit:cover;border-radius:10px;border:1px solid var(--line);background:var(--soft);font-style:normal;font-weight:700;color:var(--neg)}
.att-t em{font-style:normal;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:3px}
.att-t .x{position:absolute;top:-6px;right:-6px;width:22px;height:22px;border-radius:50%;border:0;background:var(--ink);color:var(--card);cursor:pointer;line-height:1;font-size:14px}
.att-add{justify-self:start}

/* Partner, gyors dátum, napon belüli sorrend, évről évre */
.ptn{display:block;font-size:12px;color:var(--mut);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}
.qd{display:flex;gap:6px;flex-wrap:wrap;margin-top:2px}.qd button{border:1px solid var(--line);background:var(--card);border-radius:8px;padding:3px 9px;font:inherit;font-size:12.5px;color:var(--mut);cursor:pointer}
.qd button:hover{color:var(--ink);border-color:var(--mut)}
.mv{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:13px;color:var(--mut);background:var(--soft);border-radius:12px;padding:8px 12px}.mv span{flex:1;min-width:160px}
.btn:disabled{opacity:.45;cursor:default}
.open-ptn{font-size:13px;color:var(--mut);margin:-2px 0 10px;line-height:1.7}.open-ptn .link{font-size:13px}
.sub-h{margin:14px 0 4px;font-size:13px;color:var(--mut)}.sub-h:first-of-type{margin-top:4px}

/* Betűméret */
html[data-fs="l"]{--z:1.12}html[data-fs="xl"]{--z:1.25}
/* Áttekintés fülek, Beállítások szakaszok */
.dtabs{margin:0 0 16px}.dtabs>button{padding:7px 16px;font-size:14px}
.toc{margin:-4px 0 6px}.sec-h{font-size:17px;margin:26px 0 12px;letter-spacing:-.2px;scroll-margin-top:16px}.sec-h:first-of-type{margin-top:14px}
/* Tétel űrlap: további részletek */
.moredet{display:block;border:1px solid var(--line);border-radius:12px;padding:0 14px}.moredet>summary{cursor:pointer;padding:11px 0;font-size:14px;font-weight:600;list-style:none;display:flex;gap:8px;align-items:baseline;flex-wrap:wrap}
.moredet>summary::-webkit-details-marker{display:none}.moredet>summary::before{content:"▸";color:var(--mut);transition:transform .15s;display:inline-block}.moredet[open]>summary::before{transform:rotate(90deg)}
.more-sum{font-weight:400;font-size:12.5px;color:var(--mut)}.more-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;padding:2px 0 14px}
/* Rögzített táblázatfejléc (széles képernyőn) */
.ent-wrap{overflow-x:auto}
@media screen and (min-width:1100px){.ent-wrap{overflow:visible}.ent thead th{position:sticky;top:0;z-index:3;background:var(--card);box-shadow:inset 0 -1px 0 var(--line)}}
/* Betöltés közbeni váz */
.skel{display:grid;gap:16px}.skel i{display:block;border-radius:14px;background:linear-gradient(90deg,var(--soft) 25%,var(--line) 50%,var(--soft) 75%);background-size:200% 100%;animation:shim 1.2s infinite linear}
.skel-h{height:34px;width:220px}.skel-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.skel-row i{height:92px}.skel-b{height:220px}
@keyframes shim{to{background-position:-200% 0}}
@media(prefers-reduced-motion:reduce){.skel i{animation:none}}

/* Arculat: színminták, logó */
.swatches{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.sw{position:relative;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--line);background:var(--card);border-radius:99px;padding:5px 12px 5px 6px;font:inherit;font-size:13px;color:var(--ink);cursor:pointer}
.sw i{width:22px;height:22px;border-radius:50%;flex:none;box-shadow:inset 0 0 0 1px rgb(0 0 0/.12)}.sw:hover{border-color:var(--mut)}.sw.on{border-color:var(--g);box-shadow:0 0 0 2px var(--g)}
.vh{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.logo-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.logo-prev{width:48px;height:48px;border-radius:12px;object-fit:contain;border:1px solid var(--line);background:var(--soft)}
.logo-prev.empty{display:grid;place-items:center;color:var(--mut)}
.brand i.has-logo{background:none}.brand i img{width:36px;height:36px;object-fit:contain;border-radius:10px;display:block}
.rep-logo{float:right;max-height:56px;max-width:140px;object-fit:contain;margin-left:16px}
.login-logo{display:block;margin:0 auto 4px;max-width:120px;max-height:72px;object-fit:contain}

/* Első indítási varázsló, Mi újság? */
.wiz{max-width:680px;margin:3vh auto}.wiz-card{padding:26px 28px}.wiz-card h2{margin-bottom:6px}
.wiz-steps{list-style:none;display:flex;gap:6px;padding:0;margin:0 0 16px;flex-wrap:wrap}
.wiz-steps li{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--mut);padding:4px 10px 4px 4px;border-radius:99px;background:var(--soft)}
.wiz-steps li span{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--card);font-weight:700;font-size:12px}
.wiz-steps li em{font-style:normal}.wiz-steps li.on{background:var(--gs);color:var(--g);font-weight:600}.wiz-steps li.on span{background:var(--g);color:var(--on)}.wiz-steps li.done span{background:var(--gs);color:var(--g)}
.wiz-act{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:22px;padding-top:16px;border-top:1px solid var(--line)}.wiz-act .sp{flex:1}
.wl{display:grid;gap:5px;font-size:13px;font-weight:500;color:var(--mut);margin-top:14px}.wl input{width:100%}
.wiz-add{display:grid;grid-template-columns:minmax(0,1fr) 110px auto;gap:8px;margin-top:12px}.wiz-add input{width:100%;min-width:0}
.wiz-plist{list-style:none;padding:0;margin:14px 0 4px;display:grid;gap:6px}.wiz-plist li{display:flex;justify-content:space-between;background:var(--soft);border-radius:10px;padding:8px 12px}
.changes{display:grid;gap:14px}.chg-v h4{margin:0 0 4px;font-size:14px}.chg-v ul{margin:0;padding-left:18px;font-size:14px;line-height:1.6}

/* Rendezés, lapozás */
.ent th.srt{cursor:pointer;user-select:none}.ent th.srt:hover{color:var(--ink)}.ent th.srt.on{color:var(--g)}.ent th i{font-style:normal;margin-left:3px}
.more{display:flex;margin:14px auto 0}.only-sm{display:none}.top-act{flex-wrap:wrap;align-items:center}
/* Parcella-történet */
.hist{font-size:13px}.hist th,.hist td{padding:6px 5px}.hist th{font-size:11px;letter-spacing:.2px}
.hist th:nth-child(2),.hist td:nth-child(2){text-align:left;white-space:normal;width:100%}.hist .tag{font-size:11px;padding:1px 6px;margin-left:2px}
/* Év átmásolása */
.chk{display:flex!important;gap:10px;align-items:flex-start;color:var(--ink)}.chk input{margin-top:3px;width:auto}.chk small{display:block;color:var(--mut);font-weight:400;margin-top:2px}
.cp-h{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;font-size:13.5px}
.cp-list{max-height:42vh;overflow:auto;border:1px solid var(--line);border-radius:12px}
.chk[hidden],.cp[hidden]{display:none!important}
.cp{display:grid!important;grid-template-columns:auto auto minmax(0,1fr) auto;gap:10px;align-items:center;padding:9px 12px;border-bottom:1px solid var(--line);cursor:pointer;color:var(--ink);font-weight:400}
.cp:last-child{border-bottom:0}.cp:hover{background:var(--soft)}.cp input{width:auto}.cp .mut{font-size:12.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cp b{font-variant-numeric:tabular-nums;font-size:13.5px}
/* Éves jelentés */
.rep-h h1{margin:0;font-size:24px;letter-spacing:-.4px}.rep-h p{margin:4px 0 18px;color:var(--mut);font-size:13.5px}.report .card h3{margin-bottom:10px}
.rep-list td{white-space:normal}.rep-list td:nth-child(1),.rep-list td:nth-child(3){white-space:nowrap}.rep-list th:nth-child(-n+4),.rep-list td:nth-child(-n+4),.rep-list th:nth-child(7),.rep-list td:nth-child(7){text-align:left}

/* Mobil (csak képernyőn – nyomtatáskor ne a mobil elrendezés jöjjön) */
@media screen and (max-width:760px){
  .only-sm{display:block}
  .wiz-card{padding:20px 16px}.wiz-steps li em{display:none}.wiz-steps li.on em{display:inline}.wiz-add{grid-template-columns:minmax(0,1fr) 84px}.wiz-add .btn{grid-column:1/-1;justify-content:center}
  /* gombsor: Vissza balra, Tovább jobbra egy sorban, alatta középen a kihagyás */
  .wiz-act .sp{display:none}.wiz-act>.btn.p{order:2;margin-left:auto}.wiz-act>.btn.s{order:1}.wiz-act>.link{order:3;flex-basis:100%;text-align:center;padding:6px 0}
  .in-wiz .fab{display:none}
  .skel-row{grid-template-columns:1fr 1fr}.dtabs{display:flex}.dtabs>button{flex:1;padding:7px 8px}
  .sumk{grid-template-columns:1fr 1fr;gap:8px}.sk{padding:8px 12px}.sk b{font-size:17px}.sk-r{grid-column:1/-1}
  .m-only{display:inline}.m-only b{color:var(--ink);font-weight:600}
  .card-h{flex-wrap:wrap;row-gap:2px}.card-h .hint{font-size:12px}
  .wx-now{min-width:0;width:100%}.wx-days{grid-template-columns:repeat(7,minmax(54px,1fr))}
  .rn{grid-template-columns:40px 1fr auto}.rn small{grid-column:2/-1;text-align:left;min-width:0;margin-top:-4px}
  .duebar{flex-wrap:wrap}.duebar>div{flex-basis:calc(100% - 40px)}.duebar .btn{margin-left:30px}
  .ol{grid-template-columns:minmax(0,1fr) auto;gap:4px 10px}.ol>:nth-child(2){display:none}.ol>:nth-child(3){grid-column:1;grid-row:2;font-size:12.5px}
  .ol b{grid-column:2;grid-row:1}.ol .btn{grid-column:2;grid-row:2}
  .tpls{flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}.tpls .tag{flex:none}
  .cp{grid-template-columns:auto minmax(0,1fr) auto}.cp .mut{grid-column:2/-1;grid-row:2}
  body{display:block}
  nav{position:fixed;inset:auto 0 0 0;top:auto;width:auto;height:auto;flex-direction:row;padding:6px 8px calc(6px + env(safe-area-inset-bottom));border:0;border-top:1px solid var(--line);z-index:20;justify-content:space-around;gap:0}
  .brand,.nav-foot{display:none}
  .nv{flex-direction:column;gap:3px;font-size:11.5px;padding:6px 4px;width:auto;flex:1;align-items:center}.nv.on{background:none}
  main{padding:20px 16px 110px}
  h2{font-size:21px}
  .fab{display:grid;place-items:center;position:fixed;right:18px;bottom:calc(76px + env(safe-area-inset-bottom));width:56px;height:56px;border-radius:18px;border:0;background:var(--g);color:var(--on);box-shadow:0 8px 24px color-mix(in srgb,var(--g) 45%,transparent);z-index:21;cursor:pointer}
  .hide-sm{display:none}.top-act .new-e{display:none}
  .kpi{grid-template-columns:1fr 1fr;gap:10px}.kc{padding:12px 14px}.kc b{font-size:19px}.kc.res{grid-column:1/-1}
  .grid2{grid-template-columns:1fr}.card{padding:16px}.tw{margin:0 -16px;padding:0 16px}
  .flt select{flex:1 1 40%}.flt .seg{width:100%}.flt .seg>button{flex:1}
  .ent thead{display:none}
  .ent tbody tr{display:grid;grid-template-columns:1fr auto;grid-template-areas:"cat amt" "mob mob" "qty act";gap:3px 10px;padding:12px 16px;border-bottom:1px solid var(--line)}
  .ent tbody tr.grp{display:block;padding:0;border:0}
  .ent td{display:block;border:0;padding:0!important;text-align:left}
  .ent .d{display:none}.c-cat{grid-area:cat}.c-amt{grid-area:amt;text-align:right!important}.c-qty{grid-area:qty;text-align:left!important;color:var(--mut);font-size:13px}
  .c-mob{display:block!important;grid-area:mob;color:var(--mut);font-size:13px;white-space:normal}.c-act{grid-area:act;width:auto}
  .c-qty small{display:inline;margin-left:4px}
  .ent tr.grp td{padding:10px 16px!important}.grp-sum{margin-left:0;width:100%;font-size:12.5px}
  /* telefonon lebegő doboz: két oldalt és alul kis hely, körben lekerekítve (a régi, teljes szélességű lap: width:100%;max-width:100%;margin:auto 0 0;border-radius:20px 20px 0 0) */
  dialog{width:calc(100% - 20px);max-width:calc(100% - 20px);max-height:calc(94vh - 10px);margin:auto auto calc(10px + env(safe-area-inset-bottom));border-radius:18px}
  form{padding:18px 16px calc(18px + env(safe-area-inset-bottom))}
  .calc{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.calc .m-price,.calc .m-amt{grid-column:1/-1}
  .act .btn{flex:1}.act .sp{display:none}.act .btn.d{flex:0}
  #toasts{bottom:calc(150px + env(safe-area-inset-bottom))}
}

/* Nyomtatás (éves jelentés) – mindig világos színekkel */
@media print{
  :root,:root[data-theme],:root:not([data-theme=light]){--ink:#111;--mut:#555;--bg:#fff;--card:#fff;--soft:#f2f2f2;--line:#d5d5d5;--g:#2f6f4b;--gs:#e4f0e8;--out:#b86e12;--outs:#fbefdc;--neg:#c0392b;--negs:#fbe6e3;--hv:#3d64a8;--hvs:#e5ecf8;--on:#fff;--on2:#fffc;--pos:#2f6f4b;--poss:#e4f0e8;--rowh:#f6f7f3;--grp:#e3efe6;--grpt:#245a3c;--avg:#aab3ad;--c-k:#cc8016;--c-b:#1e7346;--s1:#2a78d6;--s2:#eb6834;--s3:#1baf7a;--s4:#eda100;--s5:#e87ba4;--s6:#008300;--s7:#6250d6;--s8:#e34948;--sh:none;color-scheme:light}
  @page{margin:12mm}
  body{display:block;background:#fff;font-size:10.5pt}
  nav,.fab,.no-print,#toasts,dialog{display:none!important}
  body{zoom:1!important;min-height:0!important}.spr th:last-child{display:none}
  .only-print{display:revert!important}.spr .c-note{max-width:none}
  .card.flush div{overflow:visible!important}.spr th,.spr td,.apia td{white-space:normal}
  main{padding:0!important;max-width:none;margin:0}
  .card,.kc{box-shadow:none;border-color:var(--line);break-inside:avoid}.card.long{break-inside:auto}
  .card{padding:12px 14px;margin-bottom:10px}.tw{overflow:visible;margin:0;padding:0}
  th,td{padding:4px 7px}.kpi{grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:10px}.kc b{font-size:16pt}
  thead{display:table-header-group}tr{break-inside:avoid}
}
/* anyagkészlet: vásárlás (név, kiszerelés) és felhasználás (adag / ha) a tétel űrlapon */
.matbox{display:grid;gap:12px;background:var(--soft);border-radius:12px;padding:12px 14px}.matbox:not(.open){background:none;padding:0}
.matbox:not(.open) .mat-in,.matbox.open .mat-open{display:none}.mat-open{justify-self:start;display:inline-flex;gap:6px;align-items:center}
.mat-in{display:grid;gap:12px}.mat-pack,.mat-rate{display:grid;grid-template-columns:1fr 130px;gap:12px}
.mat-in label{min-width:0}.mat-in input,.mat-in select{width:100%;background:var(--card)}
small.mat{display:block;color:var(--g);font-weight:500}
/* felugró ablak: görgetéskor a fejléc (bezárás) és a gombsor (Mentés) a helyén marad, a választott színséma halvány árnyalatával; a bezárás piros */
dialog .dlg-h{position:sticky;top:0;z-index:5;background:var(--gs);margin:-22px -24px 0;padding:16px 16px 12px 24px;border-bottom:1px solid var(--line)}
dialog .dlg-h h3{color:var(--grpt)}dialog .dlg-h .ib{background:#c0392b;color:#fff}dialog .dlg-h .ib:hover{background:#a02f23;color:#fff}
dialog .act{position:sticky;bottom:0;z-index:5;background:var(--gs);margin:4px -24px -22px;padding:14px 24px 16px}
@media screen and (max-width:760px){
  dialog .dlg-h{margin:-18px -16px 0;padding:12px 8px 10px 16px}
  dialog .act{margin:4px -16px calc(-18px - env(safe-area-inset-bottom));padding:12px 16px calc(18px + env(safe-area-inset-bottom))}
}
/* térkép: parcellák (Parcellák oldal) és határ rajzolása */
.pmap{height:420px;border-radius:12px;overflow:hidden;background:var(--soft);display:grid;place-items:center;z-index:0;position:relative}
.dmap{height:min(58vh,520px);border-radius:12px;overflow:hidden;background:var(--soft);display:grid;place-items:center;z-index:0;position:relative}
.pmap.leaflet-container,.dmap.leaflet-container{display:block;font:inherit}
.map-card .card-h{flex-wrap:wrap;gap:10px}
.pleg{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:10px;font-size:13px;color:var(--mut)}.pleg:empty{display:none}.pleg span{display:inline-flex;align-items:center;gap:6px}.pleg i{width:14px;height:14px;border-radius:4px;display:inline-block}
.map-off{display:grid;justify-items:center;gap:8px;text-align:center;padding:24px;color:var(--mut);font-size:14px;max-width:420px}
/* a Leaflet saját stílusa később töltődik be, ezért erősebb kijelölés kell */
.leaflet-tooltip.pm-lbl{background:rgb(15 20 17/.62);border:1px solid rgb(255 255 255/.7);border-radius:6px;box-shadow:0 1px 4px #0006;color:#fff;font-weight:700;font-size:12px;padding:1px 7px;text-shadow:none;white-space:nowrap}
.pm-far .leaflet-tooltip.pm-lbl{display:none}   /* messziről a nevek egymásra csúsznának */.leaflet-tooltip.pm-lbl::before{display:none}
.pm-v{background:#ffd400;border:2px solid #fff;border-radius:50%;box-shadow:0 0 3px #000a;cursor:grab}
.pm-act{display:flex;gap:6px;margin-top:8px}
.dm-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.dm-bar input{flex:1;min-width:140px}.dm-area{flex:1;min-width:180px;font-size:14px;color:var(--mut)}.dm-area b{color:var(--ink)}
.dm-bar>.mut{flex:1;font-size:13.5px}
@media screen and (max-width:760px){.pmap{height:320px}}
/* fotónapló */
.ph-strip{display:flex;flex-wrap:wrap;gap:6px;align-items:center;font-size:13px}
.ph-th{width:52px;height:52px;border-radius:10px;overflow:hidden;border:1px solid var(--line);background:var(--soft);padding:0;cursor:pointer;display:grid;place-items:center;color:var(--mut);font-weight:600}
.ph-th img{width:100%;height:100%;object-fit:cover;display:block}.ph-add{border-style:dashed;color:var(--g)}.ph-add:hover{background:var(--gs)}.ph-strip .link,.ph-strip>.mut{margin-left:4px}
.ph-filt{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:16px}.ph-filt select{width:auto;max-width:100%}
.ph-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}
.ph-t{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--card);padding:0;cursor:pointer;text-align:left;display:flex;flex-direction:column;color:var(--ink);font:inherit}
.ph-t:hover{border-color:var(--g)}.ph-t img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;background:var(--soft)}
.ph-cap{padding:8px 10px;font-size:13px;color:var(--mut);display:flex;flex-wrap:wrap;gap:4px 6px;align-items:center}.ph-cap b{color:var(--ink)}.ph-cap em{flex-basis:100%;font-style:normal;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ph-prev{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.ph-prev span{flex:none;display:grid;gap:3px;font-size:12px;color:var(--mut);text-align:center}.ph-prev img{width:84px;height:84px;object-fit:cover;border-radius:10px;display:block}.ph-prev em{font-style:normal;display:inline-flex;gap:3px;justify-content:center;align-items:center}
.ph-lbl{font-size:13px;font-weight:500;color:var(--mut);margin-bottom:6px}
.ph-tags{display:flex;flex-wrap:wrap;gap:6px}.ph-tags label{display:block;cursor:pointer}.ph-tags input{position:absolute;opacity:0;pointer-events:none}
.ph-tags span{display:inline-block;padding:6px 12px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--ink);font-size:13px}.ph-tags input:checked+span{background:var(--g);border-color:var(--g);color:var(--on)}.ph-tags input:focus-visible+span{outline:2px solid var(--g)}
.lb{position:relative;background:#111;border-radius:12px;overflow:hidden;display:grid;place-items:center;min-height:200px}.lb img{max-width:100%;max-height:min(62vh,640px);display:block;object-fit:contain}
.lb-n{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:44px;border-radius:50%;border:0;background:#000a;color:#fff;font-size:30px;line-height:1;cursor:pointer;display:grid;place-items:center;padding:0 0 4px}.lb-n:hover{background:#000d}.lb-p{left:10px}.lb-x{right:10px}
.ph-pop{border:0;padding:0;background:none;cursor:pointer}.ph-pop img{width:180px;max-height:140px;object-fit:cover;border-radius:8px;display:block}
@media screen and (max-width:760px){.ph-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ph-cap{padding:6px 8px;font-size:12px}}
@media print{.ph-grid{grid-template-columns:repeat(3,1fr);gap:10px}.ph-t{break-inside:avoid;border-color:#ccc}.ph-cap em{white-space:normal}.ph-year{break-inside:auto}}
.ph-strip label.ph-th{display:grid;place-items:center;align-content:center;gap:0}
.ph-empty{display:inline-flex;align-items:center;gap:7px;justify-self:start;align-self:flex-start;padding:6px 12px;border:1px dashed var(--line);border-radius:999px;color:var(--mut);font-size:13px;font-weight:500;cursor:pointer}
.ph-empty:hover{border-color:var(--g);color:var(--g);background:var(--gs)}
.pc .ph-strip .link{margin-top:0;align-self:center}
/* Ki / Be kapcsolók: a „Kikapcsolva” aktívan szürke (inaktív hatás), a „Bekapcsolva” a színséma színével */
.seg>button.on.off{background:var(--mut);color:var(--card);box-shadow:none}
.seg.onoff>button.on:not(.off)::before{content:"✓";margin-right:5px;font-weight:700}
.seg.onoff>button.on.off::before{content:"✕";margin-right:5px;font-weight:700}
/* a parcella kártyáján a fotósor mindig egy sor marad (legfeljebb 3 kép + „+N” + hozzáadás); a link csak ha elfér */
.pc .ph-strip{flex-wrap:nowrap;overflow:hidden}.pc .ph-strip .ph-th{flex:none}
.pc .ph-strip .ph-all{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:0 1 auto}
.geo-io{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:16px;font-size:13.5px}.geo-io .mut{flex-basis:100%}
