:root{--plum:#2A0F3D;--violet:#7B2D8E;--teal:#0E7C7A;--gold:#B8913F;--mist:#F6F2F9;--line:#E4DBEC;--muted:#6C5A7B}
*{box-sizing:border-box}
body{margin:0;font:16px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;color:var(--plum);background:#fff}
.top{display:flex;flex-wrap:wrap;align-items:center;gap:8px 18px;padding:12px 20px;background:var(--plum);color:#fff}
.brand{font-size:1.2rem}.sub{color:#D9CDE4;margin-right:12px}
.nav{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;flex:1}
.nav a,.nav .link{color:#fff;text-decoration:none;font-weight:600;padding:6px 0;background:none;border:0;font:inherit;cursor:pointer}
.nav a:hover,.nav .link:hover{text-decoration:underline}
.wrap{max-width:1000px;margin:0 auto;padding:28px 20px 60px}
h1{font-size:1.9rem;margin:0 0 12px}h2{font-size:1.3rem;margin:24px 0 10px}
.card{background:var(--mist);border-radius:16px;padding:24px;margin-top:24px}
.narrow{max-width:460px;margin-inline:auto}
.f{display:block;margin:14px 0}.f span{display:block;font-weight:600;margin-bottom:5px}
input,select{width:100%;padding:11px 12px;border:2px solid var(--line);border-radius:10px;font:inherit;color:inherit;background:#fff}
input:focus,select:focus,button:focus-visible,a:focus-visible{outline:3px solid var(--teal);outline-offset:2px;border-color:var(--violet)}
.btn{display:inline-block;background:var(--violet);color:#fff;border:0;border-radius:999px;padding:11px 24px;font:inherit;font-weight:600;cursor:pointer;margin-top:8px}
.btn:hover{background:#6A2479}.btn.s{padding:7px 14px;margin:0;font-size:.9rem}.btn.warn{background:#A33A4F}
form.inline{display:inline-flex;gap:8px;align-items:center;margin:2px 0}
form.inline input,form.inline select{width:auto;padding:7px 9px}
.flash{padding:12px 16px;border-radius:10px;margin:0 0 16px}.flash.ok{background:#E3F4F3;color:#0A5553}.flash.err{background:#FBE7EB;color:#8A2237}
.muted{color:var(--muted);font-size:.9rem}
.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:.95rem}
th{text-align:left;border-bottom:2px solid var(--plum);padding:10px 8px}td{padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:top}
tr.off td{opacity:.55}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin-top:20px}
.tile{background:var(--mist);border-radius:14px;padding:18px}.tile.off{opacity:.7}.tile h3{margin:0 0 6px}.tile p{margin:0 0 10px;color:var(--muted)}
.tag{background:var(--gold);color:var(--plum);border-radius:999px;padding:2px 10px;font-size:.8rem;font-weight:600}
a.tile{display:block;color:inherit;text-decoration:none;border:2px solid transparent}
a.tile:hover,a.tile:focus-visible{border-color:var(--violet)}
.publish{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between;margin:16px 0 8px}
.publish.dirty{background:#FFF4DC;border:2px solid var(--gold)}
.item.hidden{opacity:.65}
.acts{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.btn.ghost{background:#fff;color:var(--plum);border:2px solid var(--line)}.btn.ghost:hover{background:var(--mist)}
.btn:disabled{opacity:.4;cursor:not-allowed}
textarea{width:100%;padding:11px 12px;border:2px solid var(--line);border-radius:10px;font:inherit;color:inherit;background:#fff;resize:vertical}
textarea:focus{outline:3px solid var(--teal);outline-offset:2px;border-color:var(--violet)}
textarea.code{font-family:ui-monospace,Consolas,monospace;font-size:.85rem}
.days{display:flex;flex-wrap:wrap;gap:8px 14px}.chk{display:inline-flex;align-items:center;gap:6px;font-weight:400}
.chk input{width:auto}
.thumb{display:block;border-radius:10px;object-fit:cover;margin:6px 0 10px;background:#fff}
.gallery-admin{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px;margin-top:8px}
.gitem{margin-top:0}.gthumb{display:block;width:100%;height:auto;border-radius:10px;margin-bottom:10px;background:#fff}
input[type=file]{padding:9px;background:#fff}
.badge{display:inline-block;border-radius:999px;padding:2px 10px;font-size:.8rem;font-weight:600;vertical-align:middle}
.badge.draft{background:var(--line);color:var(--plum)}.badge.pending{background:#FFF4DC;color:#7A5A12;border:1px solid var(--gold)}.badge.approved{background:#E3F4F3;color:#0A5553}
.help{margin:6px 0 4px}.help summary{cursor:pointer;color:var(--violet);font-weight:600}.help code{background:#fff;padding:1px 6px;border-radius:6px}
.thumb.wide{aspect-ratio:40/21;height:auto}
.preview{max-width:46em}.preview .cover{display:block;width:100%;height:auto;border-radius:12px;margin-bottom:16px}
.preview h2{margin:28px 0 10px}.preview blockquote{margin:16px 0;padding-left:16px;border-left:4px solid var(--gold);color:var(--muted)}

.toolbar{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 8px}
.tb{background:#fff;color:var(--plum);border:2px solid var(--line);border-radius:10px;padding:6px 12px;font:inherit;font-size:.9rem;font-weight:600;cursor:pointer;min-width:40px}
.tb:hover{background:var(--mist);border-color:var(--violet)}.tb:focus-visible{outline:3px solid var(--teal);outline-offset:2px}
.tb-b{font-weight:800}.tb-i{font-style:italic}
.editor{display:grid;gap:16px}
.ed-pv{background:#fff;border:2px dashed var(--line);border-radius:12px;padding:14px 16px;max-height:34rem;overflow:auto}
.pv-title{font-size:.8rem;font-weight:700;color:var(--muted);margin-bottom:8px;text-transform:none}
.ed-pv h2{font-size:1.25rem;margin:18px 0 8px}.ed-pv h3{font-size:1.1rem;margin:14px 0 6px}.ed-pv p{margin:0 0 10px}.ed-pv ul,.ed-pv ol{margin:0 0 10px;padding-left:1.3em}
.ed-pv blockquote{margin:10px 0;padding-left:14px;border-left:4px solid var(--gold);color:var(--muted)}.ed-pv a{color:var(--violet)}
@media (min-width:900px){.editor{grid-template-columns:1fr 1fr;align-items:start}.wrap.wide{max-width:1200px}}

.steps2{padding-left:1.3em}.steps2>li{margin:0 0 20px}
.qr{margin:12px 0;background:#fff;display:inline-block;padding:8px;border-radius:12px;line-height:0}.qr svg{width:220px;height:220px}
.key{background:#fff;padding:3px 8px;border-radius:6px;word-break:break-all;font-size:1rem;letter-spacing:.05em}
.codes{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}
.codes li{background:#fff;border:2px dashed var(--line);border-radius:10px;padding:10px;text-align:center}.codes code{font-size:1.15rem;font-weight:700;letter-spacing:.06em}

/* ===== nagłówek panelu z logo ===== */
.brand{display:inline-flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-size:1.2rem}
.brand:hover{text-decoration:none}
.logo{display:inline-flex;background:#fff;border-radius:10px;padding:3px 5px}
.logo img{display:block;height:40px;width:auto}
.sub{font-weight:600;letter-spacing:.01em}
/* ===== statystyki ===== */
.chips{display:flex;gap:8px;margin:12px 0 4px}
.chip{border:2px solid var(--line);border-radius:999px;padding:5px 16px;color:var(--plum);text-decoration:none;font-weight:600;background:#fff}
.chip:hover{border-color:var(--violet)}.chip.on{background:var(--violet);border-color:var(--violet);color:#fff}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin:16px 0}
.kpi{background:var(--mist);border-radius:14px;padding:16px 18px;display:flex;flex-direction:column;gap:2px}
.kpi strong{font-size:2rem;line-height:1.1}.kl{font-size:.8rem;font-weight:700;color:var(--muted)}
.up{color:#0A6B5E;font-weight:700}.down{color:#A33A4F;font-weight:700}
.chart{width:100%;height:auto;display:block}.chart .grid{stroke:var(--line);stroke-width:1}.chart .ax{font-size:11px;fill:var(--muted)}
.chart .b-views{fill:#D8C3E6}.chart .b-vis{fill:var(--violet)}
.legend{display:flex;gap:16px;align-items:center;font-size:.9rem;color:var(--muted);margin:6px 0 0}
.sw{display:inline-block;width:12px;height:12px;border-radius:3px;margin-right:4px;vertical-align:middle}.sv{background:var(--violet)}.sw2{background:#D8C3E6}
.cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px}
.cols .card{margin-top:16px}.cols h2{margin-top:0;font-size:1.15rem}
.bt{width:100%;border-collapse:collapse}.bt td{padding:5px 0;border:0;vertical-align:middle}
.bl{width:42%;padding-right:10px;word-break:break-word;font-size:.92rem}.bv{width:42%}.bn{width:16%;text-align:right;font-weight:700}
.bar{display:block;height:10px;background:var(--violet);border-radius:5px;min-width:2px}
.statsmini{display:flex;flex-wrap:wrap;gap:12px 32px;align-items:center;color:inherit;text-decoration:none;margin:12px 0}
.statsmini strong{font-size:1.5rem}.statsmini .more{margin-left:auto;font-weight:700;color:var(--violet)}
.statsmini:hover{outline:2px solid var(--violet)}

.bsvg{display:block;width:100%;height:10px}.bt-track{fill:#EFE7F5}.bt-fill{fill:var(--violet)}
.statsmini>div{display:flex;flex-direction:column;gap:0}.statsmini .kl{margin-bottom:2px}

.back{margin-top:16px}

/* ===== zajęcia: edytor ===== */
a.tile.featured{background:linear-gradient(135deg,var(--violet),#4C1B6B);color:#fff}
a.tile.featured p{color:#EADCF3}
.cl-head{display:grid;grid-template-columns:96px 1fr;gap:14px;align-items:start}
.cl-main h3{margin:0 0 4px}.cl-main p{margin:0 0 6px}
.cl-actions{grid-column:1/-1}
.ctumb{display:block;width:96px;height:72px;border-radius:10px;object-fit:cover;background:var(--line)}
.ctumb.ph{background:linear-gradient(135deg,#E9DDF1,#D8F0EF)}
@media (min-width:700px){.cl-head{grid-template-columns:96px 1fr auto}.cl-actions{grid-column:auto}}
.slots{display:grid;gap:14px}
@media (min-width:900px){.slots{grid-template-columns:1fr 1fr}}
fieldset.slot{border:2px dashed var(--line);border-radius:14px;padding:6px 16px 14px;margin:0;background:#fff}
fieldset.slot legend{font-weight:700;padding:0 8px;color:var(--violet)}
.imgstrip{display:flex;flex-wrap:wrap;gap:10px;margin:8px 0 14px}
.strip-btn{display:flex;flex-direction:column;align-items:center;gap:4px;background:#fff;border:2px solid var(--line);border-radius:12px;padding:6px;cursor:pointer;font:inherit;font-size:.8rem;color:var(--plum)}
.strip-btn:hover{border-color:var(--violet)}.strip-btn img{display:block;border-radius:8px;object-fit:cover}
.imgs{display:grid;gap:14px;margin-top:16px}
.imgcard{display:grid;gap:14px;background:#fff;border-radius:14px;padding:14px;grid-template-columns:160px 1fr;align-items:start}
.imgcard>img{border-radius:10px;object-fit:cover;width:160px;height:120px}
@media (max-width:640px){.imgcard{grid-template-columns:1fr}.imgcard>img{width:100%;height:auto}}
.savebar{position:sticky;bottom:0;background:rgba(255,255,255,.95);padding:14px 0;border-top:1px solid var(--line);margin-top:20px}
.upl{max-width:560px}

a.btn,a.btn:hover{text-decoration:none}
.preview figure{margin:14px 0}.preview img{display:block;max-width:100%;height:auto;border-radius:10px}.preview figcaption{font-size:.85rem;color:var(--muted);margin-top:6px}

/* ===== cennik: edytor ===== */
.two{display:grid;gap:0 16px}
@media (min-width:800px){.two{grid-template-columns:1fr 1fr}}
fieldset.slot.wide{margin:0 0 14px}
details.item{background:#fff;border:2px solid var(--line);border-radius:14px;padding:4px 16px;margin:10px 0}
details.item[open]{border-color:var(--violet)}
details.item summary{cursor:pointer;padding:10px 0;font-size:1rem}
details.item.hidden{opacity:.65}
.cl-head.pr{grid-template-columns:1fr}
@media (min-width:700px){.cl-head.pr{grid-template-columns:1fr auto}}

@font-face{font-family:Fraunces;font-weight:600;font-display:swap;src:url(../fonts/fraunces-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+2013,U+2014,U+2018,U+2019,U+201C,U+201D,U+2026}
@font-face{font-family:Fraunces;font-weight:600;font-display:swap;src:url(../fonts/fraunces-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02AF,U+1E00-1EFF}
@font-face{font-family:Figtree;font-weight:400;font-display:swap;src:url(../fonts/figtree-latin-400-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+2013,U+2014,U+2018,U+2019,U+201C,U+201D,U+2026}
@font-face{font-family:Figtree;font-weight:400;font-display:swap;src:url(../fonts/figtree-latin-ext-400-normal.woff2) format("woff2");unicode-range:U+0100-02AF,U+1E00-1EFF}
@font-face{font-family:Figtree;font-weight:600;font-display:swap;src:url(../fonts/figtree-latin-600-normal.woff2) format("woff2");unicode-range:U+0000-00FF,U+2013,U+2014,U+2018,U+2019,U+201C,U+201D,U+2026}
@font-face{font-family:Figtree;font-weight:600;font-display:swap;src:url(../fonts/figtree-latin-ext-600-normal.woff2) format("woff2");unicode-range:U+0100-02AF,U+1E00-1EFF}
/* ===== edytor wizualny (richtext.js) ===== */
[hidden]{display:none!important}
.rt-host{margin-top:6px}
.rt-box{position:relative;border:2px solid var(--line);border-radius:18px;background:#fff}
.rt-box:focus-within{border-color:var(--violet)}
.rt-bar{display:flex;flex-wrap:wrap;align-items:center;gap:2px 0;padding:6px 8px;border-bottom:2px solid #EFE7F5;border-radius:16px 16px 0 0;background:#fff}
.rt-g{display:flex;align-items:center;gap:2px;padding:0 6px;border-right:1px solid #E8E0EF}
.rt-g:last-child{border-right:0}
.rb{min-width:38px;height:38px;border:0;background:transparent;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font:inherit;font-size:.92rem;font-weight:600;color:var(--plum);cursor:pointer;padding:0 8px}
.rb:hover:not(:disabled),.rb.on{background:#F1E8F8}
.rb:disabled{opacity:.35;cursor:not-allowed}
.rb:focus-visible,.rt-mi:focus-visible,.rt-sw:focus-visible,.rt-ib:focus-visible{outline:3px solid var(--teal);outline-offset:1px}
.rb svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.rb.dd:after{content:"";border:4px solid transparent;border-top-color:var(--plum);border-bottom:0;margin-left:6px}
.rb .acolor{font-weight:800;font-size:1.05rem;line-height:1;border-bottom:4px solid var(--violet);padding-bottom:1px}
.rb .abg{font-weight:800;font-size:.95rem;background:#EBD9F3;border-radius:4px;padding:0 5px}
.rt-area{font-family:Figtree,system-ui,sans-serif;font-size:1.05rem;line-height:1.6;color:var(--plum);padding:22px 26px;min-height:360px;outline:none;overflow-wrap:anywhere}
.rt-area.compact{min-height:92px;padding:12px 16px;font-size:1rem}
.rt-area h2,.rt-area h3{font-family:Fraunces,Georgia,serif;font-weight:600;line-height:1.2;margin:1.1em 0 .45em}
.rt-area h2{font-size:1.7rem}.rt-area h3{font-size:1.3rem}
.rt-area>:first-child{margin-top:0}
.rt-area p{margin:0 0 .9em}
.rt-area ul,.rt-area ol{margin:0 0 .9em;padding-left:1.4em}
.rt-area li{margin-bottom:.3em}
.rt-area blockquote{border-left:4px solid var(--violet);margin:1em 0;padding:.2em 0 .2em 1em;color:var(--muted)}
.rt-area a{color:var(--violet);text-decoration:underline}
.rt-area figure.inline-img{margin:22px 0;cursor:pointer;user-select:none}
.rt-area figure.inline-img img{pointer-events:none}
.rt-area figure.rt-sel{outline:3px solid #1FA6A3;outline-offset:5px;border-radius:20px}
.rt-code{display:block;width:100%;min-height:360px;border:0;padding:18px 22px;font:.9rem/1.5 ui-monospace,Menlo,Consolas,monospace;color:var(--plum);background:#FBF9FD;resize:vertical;outline:none}
.rt-pv{padding:22px 26px;min-height:360px;font-family:Figtree,system-ui,sans-serif;font-size:1.05rem;line-height:1.6}
.rt-pv h2,.rt-pv h3{font-family:Fraunces,Georgia,serif;font-weight:600;line-height:1.2;margin:1.1em 0 .45em}
.rt-pv p{margin:0 0 .9em}.rt-pv ul,.rt-pv ol{margin:0 0 .9em;padding-left:1.4em}
.rt-pv blockquote{border-left:4px solid var(--violet);margin:1em 0;padding:.2em 0 .2em 1em;color:var(--muted)}
.rt-pv a{color:var(--violet);text-decoration:underline}
.rt-foot{display:flex;justify-content:space-between;gap:12px;padding:8px 16px;border-top:2px solid #EFE7F5;font-size:.86rem;color:var(--muted);border-radius:0 0 16px 16px;min-height:38px}
.rt-pop{position:absolute;z-index:30;background:#fff;border:2px solid var(--line);border-radius:16px;box-shadow:0 18px 40px rgba(42,15,61,.2);padding:10px;min-width:190px;max-width:calc(100% - 16px)}
.rt-pop.rt-wide{width:min(430px,calc(100% - 16px))}
.rt-menu{display:grid;gap:2px}
.rt-mi{display:block;width:100%;text-align:left;border:0;background:transparent;border-radius:9px;padding:8px 12px;font:inherit;font-weight:600;color:var(--plum);cursor:pointer}
.rt-mi:hover,.rt-mi.on{background:#F1E8F8}
.rt-fs-fs-sm{font-size:.85rem}.rt-fs-fs-lg{font-size:1.2rem}.rt-fs-fs-xl{font-size:1.5rem}
.rt-ff-ff-serif{font-family:Fraunces,Georgia,serif;font-weight:600}
.rt-pt{font-size:.85rem;font-weight:700;color:var(--muted);margin-bottom:8px}
.rt-pr{display:grid;grid-template-columns:repeat(6,34px);gap:10px;margin:6px 0 10px}
.rt-sw{width:34px;height:34px;border-radius:50%;border:2px solid #fff;box-shadow:0 0 0 1px #cfc3da;cursor:pointer;padding:0}
.sw-tc-plum{background:#2A0F3D}.sw-tc-violet{background:#7B2D8E}.sw-tc-teal{background:#0E7C7A}.sw-tc-gold{background:#8E6E2A}.sw-tc-muted{background:#6C5A7B}.sw-tc-red{background:#B03A55}
.sw-hl-violet{background:#EBD9F3}.sw-hl-teal{background:#CDEFED}.sw-hl-gold{background:#F3E4BF}.sw-hl-red{background:#F9D5DD}
.rt-emoji{display:grid;grid-template-columns:repeat(8,1fr);gap:2px}
.rt-em{border:0;background:transparent;border-radius:8px;font-size:1.35rem;line-height:1;padding:7px 0;cursor:pointer}
.rt-em:hover{background:#F1E8F8}
.rt-form{display:grid;gap:10px}
.rt-form label{display:grid;gap:4px;font-weight:600;font-size:.9rem}
.rt-form input[type=text]{width:100%}
.rt-fr{display:flex;gap:8px}
.rt-err{color:#A33A4F;font-size:.88rem;min-height:1.1em}
.rt-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:12px}
.rt-gi{padding:0;border:2px solid var(--line);border-radius:10px;overflow:hidden;cursor:pointer;background:#fff}
.rt-gi:hover{border-color:var(--violet)}
.rt-gi img{display:block;width:100%;height:64px;object-fit:cover}
.rt-pop.rt-imgbar-pop{background:var(--plum);border-color:var(--plum);padding:6px;min-width:0;width:auto}
.rt-imgbar{display:flex;gap:4px;flex-wrap:wrap}
.rt-ib{border:0;background:transparent;color:#fff;font:inherit;font-weight:600;font-size:.9rem;padding:7px 11px;border-radius:9px;cursor:pointer}
.rt-ib:hover,.rt-ib.on{background:var(--violet)}.rt-ib.del{color:#FFB3C0}
.rt-pop.rt-imgbar-pop .rt-form{background:#fff;border-radius:10px;padding:10px}

/* kontener edytora: własny, bez reguły .f span (ta zamieniała znaczniki span z formatowania w bloki i psuła pogrubienie) */
.rt-field{display:block;margin:14px 0}
.rt-field>span{display:block;font-weight:600;margin-bottom:5px}
.rt-field>small{display:block;margin-top:4px}

.rt-pop{max-height:min(75vh,620px);overflow:auto}
.rt-imglib .rt-sec{border-top:1px solid var(--line);padding-top:12px;margin-top:12px}

/* ===== O nas: panel ===== */
.onn{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#B8913F;color:#fff;font-size:.85rem;font-weight:800;margin-right:6px;vertical-align:middle}
.tt{display:grid;gap:14px}@media(min-width:760px){.tt{grid-template-columns:repeat(4,1fr)}}
.tile-form{margin:0}.tile-form .tile{width:100%;height:100%;text-align:left;font:inherit;cursor:pointer}.tile-form .tile:disabled{opacity:.5;cursor:not-allowed}
.thumb{display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.thumb img{width:140px;height:175px;object-fit:cover;border-radius:16px;border:2px solid var(--line)}
.rt-gal-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));margin:12px 0 18px}
.gal-item{background:#fff;border:2px solid var(--line);border-radius:16px;padding:10px;display:grid;gap:8px}
.gal-item img{width:100%;height:130px;object-fit:cover;border-radius:10px}
.gal-f{display:grid;gap:6px}

/* ===== blog: lista, kategorie, edytor wpisu ===== */
.pills{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.pill{display:inline-flex;gap:8px;align-items:center;padding:8px 16px;border-radius:999px;border:2px solid var(--line);background:#fff;color:var(--plum);font-weight:700;font-size:.95rem;text-decoration:none}
.pill .n{font-size:.8rem;color:var(--muted)}
.pill:hover{border-color:var(--violet)}
.pill.on{background:var(--plum);border-color:var(--plum);color:#fff}.pill.on .n{color:#D9CDE4}
.pfilter{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin:12px 0 18px;padding:12px;background:var(--mist);border-radius:16px}
.pfilter input[type=search]{flex:1 1 220px;width:auto}.pfilter select{width:auto;flex:0 1 200px}
.pfilter .btn{margin:0}
.ptable td{vertical-align:middle}.ptable td.ac{white-space:nowrap}
.ptable tr.pend td{background:#FFF8E8}
.pthumb{display:block;width:72px;height:54px;border-radius:10px;background:linear-gradient(135deg,#E9DDF1,#D8F0EF);overflow:hidden}
.pthumb img{display:block;width:72px;height:54px;object-fit:cover}
.star{color:#7A5A12;font-weight:700;font-size:.85rem}
.cat-chip{display:inline-block;border-radius:999px;padding:3px 12px;font-size:.8rem;font-weight:700;background:#EFE1F5;color:#5A1F6B}
.cat-chip.cc1{background:#DDF3F2;color:#0A5553}.cat-chip.cc2{background:#F6E7C3;color:#5C4210}
.badge.scheduled{background:#E2ECFB;color:#1D4A8C}
.pe{display:grid;gap:20px;margin-top:8px}
@media (min-width:980px){.pe{grid-template-columns:minmax(0,1fr) 340px;align-items:start}}
.pe-main,.pe-side{display:grid;gap:20px;align-content:start}
.pe-card{background:var(--mist);border-radius:20px;padding:20px 22px}
.pe-card h2{margin:0 0 10px;font-size:1.1rem}
.pe-card .f:first-child{margin-top:0}
.pe-count{text-align:right;margin:-4px 0 0}
.pe-btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.pe-btns .btn{margin:0}
.snip{display:block;background:#fff;border-radius:12px;padding:12px 14px;border:1px solid var(--line)}
.snip span{display:block}.snip-u{font-size:.78rem;color:#1E6B3A}.snip-t{font-size:1.05rem;color:#1A0DAB;font-weight:600;margin:2px 0}.snip-d{font-size:.85rem;color:#4D5156}
.pe-card input[type=file]{width:100%}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* kadr zdjęcia głównego wpisu: pionowe położenie 0–100% (klasy, bo CSP nie pozwala na style w znacznikach) */
.cp-0{object-position:50% 0%}.cp-1{object-position:50% 1%}.cp-2{object-position:50% 2%}.cp-3{object-position:50% 3%}.cp-4{object-position:50% 4%}.cp-5{object-position:50% 5%}.cp-6{object-position:50% 6%}.cp-7{object-position:50% 7%}.cp-8{object-position:50% 8%}.cp-9{object-position:50% 9%}.cp-10{object-position:50% 10%}.cp-11{object-position:50% 11%}.cp-12{object-position:50% 12%}.cp-13{object-position:50% 13%}.cp-14{object-position:50% 14%}.cp-15{object-position:50% 15%}.cp-16{object-position:50% 16%}.cp-17{object-position:50% 17%}.cp-18{object-position:50% 18%}.cp-19{object-position:50% 19%}.cp-20{object-position:50% 20%}.cp-21{object-position:50% 21%}.cp-22{object-position:50% 22%}.cp-23{object-position:50% 23%}.cp-24{object-position:50% 24%}.cp-25{object-position:50% 25%}.cp-26{object-position:50% 26%}.cp-27{object-position:50% 27%}.cp-28{object-position:50% 28%}.cp-29{object-position:50% 29%}.cp-30{object-position:50% 30%}.cp-31{object-position:50% 31%}.cp-32{object-position:50% 32%}.cp-33{object-position:50% 33%}.cp-34{object-position:50% 34%}.cp-35{object-position:50% 35%}.cp-36{object-position:50% 36%}.cp-37{object-position:50% 37%}.cp-38{object-position:50% 38%}.cp-39{object-position:50% 39%}.cp-40{object-position:50% 40%}.cp-41{object-position:50% 41%}.cp-42{object-position:50% 42%}.cp-43{object-position:50% 43%}.cp-44{object-position:50% 44%}.cp-45{object-position:50% 45%}.cp-46{object-position:50% 46%}.cp-47{object-position:50% 47%}.cp-48{object-position:50% 48%}.cp-49{object-position:50% 49%}.cp-50{object-position:50% 50%}.cp-51{object-position:50% 51%}.cp-52{object-position:50% 52%}.cp-53{object-position:50% 53%}.cp-54{object-position:50% 54%}.cp-55{object-position:50% 55%}.cp-56{object-position:50% 56%}.cp-57{object-position:50% 57%}.cp-58{object-position:50% 58%}.cp-59{object-position:50% 59%}.cp-60{object-position:50% 60%}.cp-61{object-position:50% 61%}.cp-62{object-position:50% 62%}.cp-63{object-position:50% 63%}.cp-64{object-position:50% 64%}.cp-65{object-position:50% 65%}.cp-66{object-position:50% 66%}.cp-67{object-position:50% 67%}.cp-68{object-position:50% 68%}.cp-69{object-position:50% 69%}.cp-70{object-position:50% 70%}.cp-71{object-position:50% 71%}.cp-72{object-position:50% 72%}.cp-73{object-position:50% 73%}.cp-74{object-position:50% 74%}.cp-75{object-position:50% 75%}.cp-76{object-position:50% 76%}.cp-77{object-position:50% 77%}.cp-78{object-position:50% 78%}.cp-79{object-position:50% 79%}.cp-80{object-position:50% 80%}.cp-81{object-position:50% 81%}.cp-82{object-position:50% 82%}.cp-83{object-position:50% 83%}.cp-84{object-position:50% 84%}.cp-85{object-position:50% 85%}.cp-86{object-position:50% 86%}.cp-87{object-position:50% 87%}.cp-88{object-position:50% 88%}.cp-89{object-position:50% 89%}.cp-90{object-position:50% 90%}.cp-91{object-position:50% 91%}.cp-92{object-position:50% 92%}.cp-93{object-position:50% 93%}.cp-94{object-position:50% 94%}.cp-95{object-position:50% 95%}.cp-96{object-position:50% 96%}.cp-97{object-position:50% 97%}.cp-98{object-position:50% 98%}.cp-99{object-position:50% 99%}.cp-100{object-position:50% 100%}

/* kadrowanie zdjęcia głównego wpisu */
.cov-frame{position:relative;width:100%;aspect-ratio:16/5;overflow:hidden;border-radius:12px;background:#2A0F3D;margin:6px 0 10px;cursor:grab;touch-action:none;user-select:none}
.cov-frame.drag{cursor:grabbing}
.cov-frame img{display:block;width:100%;height:100%;object-fit:cover;pointer-events:none}
.cov-frame::after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 0 2px rgba(255,255,255,.55);border-radius:12px}
.cov-pos input[type=range]{width:100%}

/* dziennik zdarzeń: lista zdań zamiast szerokiej tabeli (czytelna też na telefonie) */
.log{list-style:none;margin:16px 0 0;padding:0}
.log li{padding:12px 0;border-bottom:1px solid var(--line,#e6e0ee)}
.log p{margin:0}.log .log-meta{margin-top:2px}
.log-detail{overflow-wrap:anywhere}

.cov-frame.cov-wide{aspect-ratio:16/9;max-width:520px}
/* Menu 0.23: listy rozwijane i przycisk Opublikuj */
.dd{position:relative}.dd summary{list-style:none;color:#fff;font-weight:600;padding:6px 0;cursor:pointer}.dd summary::-webkit-details-marker{display:none}
.dd .menu{position:absolute;left:-10px;top:36px;z-index:20;background:#fff;color:var(--plum);border-radius:14px;box-shadow:0 18px 50px rgba(42,15,61,.28);padding:8px;width:min(290px,86vw)}
.dd .menu a{display:block;color:var(--plum);padding:8px 12px;border-radius:10px;text-decoration:none}
.dd .menu a:hover{background:var(--mist);text-decoration:none}.dd .menu small{display:block;font-weight:400;color:var(--muted);font-size:.8rem;line-height:1.25}
.pubform{margin:0}.pub{display:inline-flex;align-items:center;gap:9px;border:0;border-radius:999px;padding:8px 18px;font:inherit;font-weight:700;color:#fff;background:rgba(255,255,255,.14);cursor:pointer}
.pub b{width:10px;height:10px;border-radius:50%;background:#5FD2CF}.pub.dirty{background:var(--gold)}.pub.dirty b{background:#fff;box-shadow:0 0 0 4px rgba(255,255,255,.35)}
/* Strony składane z sekcji */
.secnav{display:flex;flex-wrap:wrap;gap:6px 8px;margin:16px 0 4px}.secnav a{background:var(--mist);color:var(--plum);text-decoration:none;font-weight:600;font-size:.9rem;padding:6px 14px;border-radius:999px}
.secnav a:hover{background:var(--line)}.sec{scroll-margin-top:16px}.sec h2{margin-top:0}.crumb a{color:var(--violet)}

/* Wygląd 0.24.1: menu przy logo, ikony, karty */
.nav a,.nav .link,.dd summary{font:inherit;font-weight:600}.nav form.pubform{margin-left:auto}.nav .pubform~a,.nav .pubform~form{margin-left:0}
.nav .pubform~a{margin-left:4px}
.ico{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:11px;color:#fff;font-style:normal;font-weight:700;font-size:1rem}
.ico.s{width:32px;height:32px;border-radius:9px;font-size:.9rem;flex:none}
.ico.v{background:#7B2D8E}.ico.t{background:#0E7C7A}.ico.g{background:#B8913F}.ico.p{background:#C0359B}
.dd .menu a{display:flex;gap:12px;align-items:center}
a.tile,.tile{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;flex-direction:column;gap:4px}
a.tile:hover,a.tile:focus-visible{border-color:var(--violet);box-shadow:0 6px 20px rgba(42,15,61,.1)}
.tile .ico{margin-bottom:6px}.tile h3{margin:4px 0 0;font-size:1.05rem}.tile p{margin:0;font-size:.9rem}.tile .st{margin-top:auto;padding-top:8px;font-size:.8rem;color:var(--muted)}
a.tile.featured{background:linear-gradient(135deg,var(--violet),#4C1B6B)}
.statcards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:16px 0;color:inherit;text-decoration:none}
.statcards>div{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 18px}.statcards strong{display:block;font-size:1.7rem;line-height:1.2}.statcards .kl{display:block;color:var(--muted);font-size:.9rem}
.statcards:hover>div{border-color:var(--violet)}
.shorts{display:grid;grid-template-columns:1fr 1fr;gap:14px}.shorts .row{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 18px}
@media(max-width:700px){.statcards,.shorts{grid-template-columns:1fr}.nav form.pubform{margin-left:0}}
/* Finanse */
.head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap}.head h1{margin:0}.head p{margin:2px 0 0}
.tabs{display:flex;flex-wrap:wrap;gap:6px;margin:18px 0 8px;border-bottom:2px solid var(--line)}.tabs a{padding:10px 20px;font-weight:700;color:var(--muted);text-decoration:none;border-bottom:3px solid transparent;margin-bottom:-2px}.tabs a.on{color:var(--violet);border-color:var(--violet)}.tabs a.right{margin-left:auto}
.per{display:inline-flex;align-items:center;gap:6px;background:var(--mist);border-radius:999px;padding:4px}.per a{padding:6px 14px;border-radius:999px;font-weight:700;text-decoration:none;color:var(--plum)}.per a:hover{background:var(--line)}.per .cur{background:#fff;padding:6px 16px;border-radius:999px;font-weight:700;box-shadow:0 1px 4px rgba(42,15,61,.15)}
.kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0}.kpi{background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px 18px}.kpi .l{color:var(--muted);font-size:.88rem}.kpi strong{display:block;font-size:1.65rem;line-height:1.25}.kpi .dl{font-size:.85rem;font-weight:700}.kpi .up,.up{color:#0A7C4B}.kpi .down,.down{color:#B3261E}.kpi.hl{background:var(--plum);color:#fff;border-color:var(--plum)}.kpi.hl .l{color:#D9CDE4}.kpi.hl .dl,.kpi.hl .up{color:#9FE3C2}.kpi.hl .down{color:#FFB4AB}
.fgrid{display:grid;grid-template-columns:1.25fr 1fr;gap:18px;align-items:start}.fgrid .card,.fgrid2 .card{margin-top:0}.fside{display:grid;gap:18px}.fgrid2{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:start;margin-bottom:18px}.fcol{display:grid;gap:18px}
.ft{width:100%;border-collapse:collapse;font-size:.95rem;margin-top:10px}.ft th{text-align:left;color:var(--muted);font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;padding:8px 10px;border-bottom:2px solid var(--line)}.ft td{padding:9px 10px;border-bottom:1px solid var(--line)}.ft .n{text-align:right;font-variant-numeric:tabular-nums}.ft .ind{padding-left:30px}.ft tr.grp td{background:var(--mist);font-weight:700;color:var(--violet);font-size:.88rem}.ft tr.sum td{font-weight:800;background:var(--mist);border-bottom:0}.ft tr.empty td{color:#a99bb8}.ft .res{font-weight:700}
.ract{white-space:nowrap;text-align:right}.ract a{margin-right:12px;color:var(--violet);font-weight:600;text-decoration:none}.ract form{display:inline;margin:0}.ract .link{background:none;border:0;padding:0;font:inherit;font-weight:600;color:#B3261E;cursor:pointer}.ract .link:hover,.ract a:hover{text-decoration:underline}
.fgrid>.card,.fgrid2>.card,.fside>.card:not(.m),.fcol>.card:not(.m){background:#fff;border:1px solid var(--line)}
.dot{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:8px}
.fadd{display:grid;grid-template-columns:170px 1fr 120px auto;gap:10px;align-items:end;margin-top:16px}.fadd.cat{grid-template-columns:1fr auto;border-top:1px solid var(--line);padding-top:14px}.fadd .f{margin:0}
.fdonut{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.fdonut svg{flex:none}.fdonut .dn{font-size:26px;font-weight:700;fill:#2A0F3D}.fdonut .ds{font-size:13px;fill:#6C5A7B}
.leg{list-style:none;margin:0;padding:0;display:grid;gap:7px;flex:1;min-width:220px}.leg li{display:grid;grid-template-columns:14px 1fr auto 44px;gap:10px;align-items:center;font-size:.92rem}.leg i{width:12px;height:12px;border-radius:4px}.leg b{text-align:right}.leg em{font-style:normal;color:var(--muted);text-align:right}
.fs0{stroke:#2A0F3D}.fs1{stroke:#7B2D8E}.fs2{stroke:#0E7C7A}.fs3{stroke:#B8913F}.fs4{stroke:#9A8AA8}.fs5{stroke:#C0359B}.fs6{stroke:#5FB8B5}.fs7{stroke:#E0B866}.fs8{stroke:#E58FC8}
.fb0{background:#2A0F3D}.fb1{background:#7B2D8E}.fb2{background:#0E7C7A}.fb3{background:#B8913F}.fb4{background:#9A8AA8}.fb5{background:#C0359B}.fb6{background:#5FB8B5}.fb7{background:#E0B866}.fb8{background:#E58FC8}
.fbars{width:100%;height:auto}.fbars .gl{stroke:#E4DBEC}.fbars .ax{font-size:11px;fill:#6C5A7B}.fbars .b1{fill:#0E7C7A}.fbars .b2{fill:#7B2D8E}.fbars .ln{stroke:#B8913F;stroke-width:3}.fbars .pt{fill:#fff;stroke:#B8913F;stroke-width:2.5}
.legend{display:flex;gap:16px;font-size:.85rem;margin:4px 0 8px}.dot.b1{background:#0E7C7A}.dot.b2{background:#7B2D8E}.dot.ln2{background:#B8913F;border-radius:50%}
.presets{display:flex;flex-wrap:wrap;gap:8px}.range{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;margin-top:12px}.range .f{margin:0}
.tag.warn{background:#FFF4DC;color:#7A5A12}
@media(max-width:900px){.kpis{grid-template-columns:1fr 1fr}.fgrid,.fgrid2{grid-template-columns:1fr}.fadd{grid-template-columns:1fr}.range{grid-template-columns:1fr}}
.ft a,.fcol .card a:not(.btn),.fside a:not(.btn){color:var(--violet);font-weight:600;text-decoration:none}.ft a:hover{text-decoration:underline}
/* Wiadomości */
.nbadge{display:inline-block;min-width:20px;padding:0 6px;border-radius:999px;background:#B8913F;color:#fff;font-size:.78rem;font-weight:700;text-align:center;line-height:20px}
.msg{background:#fff;border:1px solid var(--line)}.msg.unread{border-color:var(--violet);box-shadow:0 0 0 2px rgba(123,45,142,.12)}.msg h2{margin:0}.msg .body{margin:10px 0 14px;white-space:normal}.macts{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.note{background:#FFF4DC;border:1px solid var(--gold);border-radius:12px;padding:10px 14px;margin:14px 0}
.steps2{margin:8px 0 0;padding-left:22px}.steps2 li{margin:6px 0}.card.w{background:#fff;border:1px solid var(--line)}

/* Newsletter */
fieldset.plain{border:0;padding:0;margin:0;min-width:0}
.tabs.sub{margin:0 0 12px}
.card hr{border:0;border-top:1px solid var(--line);margin:16px 0}
.card details summary{cursor:pointer;font-weight:600}
/* Ramki w edytorze wiadomości (newsletter) */
.rt-area p.bx-code{text-align:center;font:700 1.5rem/1.3 "Courier New",monospace;letter-spacing:.06em;border:2px dashed var(--violet);border-radius:12px;background:var(--mist);padding:14px 20px;max-width:340px;margin:14px auto}
.rt-area p.bx-note{border-left:4px solid #B8913F;background:var(--mist);padding:12px 16px;border-radius:0 8px 8px 0;margin:14px 0}
.rt-area p.bx-btn{text-align:center;margin:14px 0}
.rt-area p.bx-btn a{display:inline-block;background:var(--violet);color:#fff;padding:10px 26px;border-radius:999px;text-decoration:none;font-weight:700}

/* Ulotka z kodem QR */
.flyer-wrap{display:grid;grid-template-columns:minmax(0,1fr) 420px;gap:20px;align-items:start}
.flyer{background:#2A0F3D;color:#fff;border-radius:14px;padding:28px 26px;text-align:center;aspect-ratio:148/210;display:flex;flex-direction:column;align-items:center;gap:8px;border:4px solid #B8913F}
.flyer .fl-logo{width:84px;height:84px;object-fit:contain;background:#fff;border-radius:50%;padding:4px}
.flyer h2{font-size:1.7rem;line-height:1.15;margin:6px 0 0;color:#fff}
.flyer .fl-lead{margin:0;color:#e8dff0;font-size:.98rem}
.flyer ul{list-style:none;margin:6px 0;padding:0;text-align:left;font-size:.95rem}
.flyer li{padding:3px 0 3px 22px;position:relative}
.flyer li::before{content:"✓";position:absolute;left:0;color:#B8913F;font-weight:700}
.flyer .fl-qr{background:#fff;padding:12px;border-radius:10px;width:150px;height:150px;margin-top:auto}
.flyer .fl-qr svg{width:100%;height:100%;display:block}
.flyer .fl-scan{margin:4px 0 0;color:#B8913F;font-weight:700;font-size:.92rem}
.flyer .fl-foot{margin:0;font-size:.8rem;color:#cbbcd8}
@media (max-width:900px){.flyer-wrap{grid-template-columns:1fr}}
@media print{
  body *{visibility:hidden}
  .flyer,.flyer *{visibility:visible}
  .flyer{position:absolute;left:0;top:0;width:148mm;height:210mm;border-radius:0;border:0;aspect-ratio:auto;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  @page{size:A5;margin:0}
}

/* Wyszukiwarka ustawień na pulpicie */
.card.search label{display:block;font-weight:600;margin-bottom:6px}
.card.search input[type=search]{width:100%}
.ps-res{list-style:none;margin:8px 0 0;padding:0;border:1px solid var(--line,#e4dcee);border-radius:12px;overflow:hidden;background:#fff}
.ps-res li+li{border-top:1px solid var(--line,#e4dcee)}
.ps-res a{display:block;padding:10px 14px;text-decoration:none;color:inherit}
.ps-res a:hover,.ps-res a.on{background:#F6F2F9}
.ps-res small{display:block;color:#6b5a7a;font-size:.85rem}
