/* =====================================================================
   STREFA KLIENTA — style własne (tokeny i przyciski dziedziczone ze styl.css)
   ===================================================================== */
body.strefa{cursor:auto;min-height:100vh;display:flex;flex-direction:column}
body.strefa *{cursor:auto}
body.strefa a,body.strefa button,body.strefa summary,body.strefa label,body.strefa [data-duze]{cursor:pointer}
body.strefa input,body.strefa textarea{cursor:text}
.s-main{flex:1;width:100%;padding-top:32px;padding-bottom:70px}
.s-naglowek{border-bottom:1px solid var(--linia);background:var(--czern);position:sticky;top:0;z-index:20}
.s-pas{display:flex;align-items:center;justify-content:space-between;gap:20px;height:70px}
.s-marka{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--krem)}
.s-marka img{width:34px;height:34px;filter:invert(1)}
.s-marka b{display:block;font-family:var(--serif);font-weight:400;font-size:1.05rem;letter-spacing:.08em}
.s-marka small{display:block;font-size:.6rem;letter-spacing:.24em;text-transform:uppercase;color:var(--zloto)}
.s-nav{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.s-nav a{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--krem-c);text-decoration:none;padding:9px 12px;border:1px solid transparent}
.s-nav a:hover{border-color:var(--linia);color:var(--krem)}
.s-nav .s-podglad{color:var(--zloto);border-color:var(--zloto)}
.s-stopka{border-top:1px solid var(--linia);padding:22px 0;font-size:.78rem;color:var(--tekst)}
.s-stopka a{color:var(--tekst)}
.s-komunikat{padding:14px 18px;border:1px solid var(--zloto);background:var(--czern-2);color:var(--krem);margin:0 0 22px;font-size:.95rem;white-space:pre-wrap;word-break:break-word}
.s-komunikat.blad{border-color:#b5533c;color:#f3c8bd}
h1{font-family:var(--serif);font-weight:400;color:var(--krem);font-size:clamp(2rem,4.5vw,3.2rem);line-height:1.05;margin:8px 0 14px}
h1 i,h2 i{font-style:italic;color:var(--zloto)}
.s-sekcja h2{font-size:clamp(1.3rem,2.4vw,1.8rem)}
code{font-family:ui-monospace,Menlo,monospace;font-size:.9em;color:var(--zloto)}
.s-drobne{font-size:.86rem;color:var(--tekst);margin-top:18px;line-height:1.6}
.s-drobne a{color:var(--zloto)}

/* logowanie / rsvp */
.s-logowanie{display:flex;justify-content:center;padding:6vh 0}
.s-karta{width:100%;max-width:520px;border:1px solid var(--linia);background:var(--czern-2);padding:clamp(26px,4vw,44px)}
.s-form{margin-top:22px}
.s-form .pole{margin-bottom:16px}
.s-form .btn{margin-top:8px;width:100%}
.s-form select{width:100%;background:var(--czern);border:1px solid var(--linia);color:var(--krem);padding:13px 14px;font:inherit}
.pole.ukryte{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}
.etykieta-pola{display:block;font-size:.68rem;letter-spacing:.2em;text-transform:uppercase;color:var(--tekst);margin-bottom:8px}
.s-radia{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.s-radio{display:flex;align-items:center;gap:10px;border:1px solid var(--linia);padding:13px 14px;font-size:.95rem;letter-spacing:0;text-transform:none;color:var(--krem);margin:0}
.s-radio:has(input:checked){border-color:var(--zloto);background:var(--czern)}
.s-radio input{width:auto;accent-color:var(--zloto)}

/* admin */
.s-details{border:1px solid var(--linia);margin:28px 0;background:var(--czern-2)}
.s-details summary{padding:16px 20px;font-family:var(--serif);font-size:1.15rem;color:var(--krem);list-style:none}
.s-details summary::-webkit-details-marker{display:none}
.s-details[open] summary{border-bottom:1px solid var(--linia)}
.s-details .s-form{padding:20px;margin:0}
.s-siatka{display:grid;grid-template-columns:repeat(2,1fr);gap:0 18px}
.s-siatka .s-pelna{grid-column:1/-1}
.s-siatka .btn{width:auto}
.s-pusto{padding:40px;border:1px dashed var(--linia);text-align:center;color:var(--tekst)}
.s-lista{display:grid;gap:16px;margin-top:10px}
.s-para{border:1px solid var(--linia);background:var(--czern-2);padding:22px 24px}
.s-para-gora{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:flex-start}
.s-para h2{font-size:1.5rem;margin:0}
.s-meta{color:var(--tekst);font-size:.9rem;margin-top:6px}
.s-liczniki{display:flex;gap:18px;flex-wrap:wrap}
.s-liczniki span{font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--tekst);display:grid;text-align:center}
.s-liczniki b{font-family:var(--serif);font-size:1.4rem;color:var(--krem);font-weight:400}
.s-akcje{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-start;margin-top:18px}
.s-akcje form{margin:0}
.s-akcje .btn{font-size:.72rem;padding:11px 16px}
.s-details-mala{margin:0;flex-basis:100%}
.s-details-mala summary{font-size:.9rem;padding:11px 16px;font-family:var(--sans);letter-spacing:.1em;text-transform:uppercase}
.s-usun{padding:0 20px 20px;border-top:1px solid var(--linia);margin-top:0;padding-top:16px}
.s-rzad{display:flex;gap:10px}.s-rzad input{max-width:200px}
.s-pasek-podgladu{border:1px solid var(--zloto);padding:12px 18px;margin-bottom:22px;display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:.92rem;color:var(--krem)}
.s-pasek-podgladu .btn{margin-left:auto;font-size:.7rem;padding:9px 14px}

/* panel pary */
.s-hero{padding:10px 0 26px;border-bottom:1px solid var(--linia)}
.s-hero-meta{color:var(--tekst);font-size:1rem;display:flex;gap:16px;flex-wrap:wrap}
#s-odliczanie{color:var(--zloto)}
.s-zakladki{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--linia);margin-bottom:34px;scrollbar-width:none;position:sticky;top:70px;background:var(--czern);z-index:10}
.s-zakladki::-webkit-scrollbar{display:none}
.s-zakladki a{padding:16px 18px;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;color:var(--tekst);text-decoration:none;white-space:nowrap;border-bottom:2px solid transparent;margin-bottom:-1px}
.s-zakladki a.aktywna{color:var(--krem);border-bottom-color:var(--zloto)}
.s-tab h2{font-size:clamp(1.5rem,3vw,2.2rem)}
.s-tab-gora{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap}
.s-wideo{position:relative;aspect-ratio:16/9;background:#000;margin-top:16px}
.s-wideo iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.s-galeria{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;margin-top:26px}
.s-galeria figure{margin:0;position:relative;aspect-ratio:1;overflow:hidden;background:var(--grafit)}
.s-galeria button,.s-galeria a{display:block;width:100%;height:100%;padding:0;border:0;background:none}
.s-galeria img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s var(--ease)}
.s-galeria figure:hover img{transform:scale(1.04)}
.s-pobierz{position:absolute!important;right:6px;bottom:6px;width:32px!important;height:32px!important;border:1px solid rgba(242,237,228,.4)!important;background:rgba(15,42,34,.7)!important;color:var(--krem);text-decoration:none;display:grid!important;place-items:center;font-size:.9rem}
.s-galeria-mini{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));margin-bottom:24px}
.s-lb{position:fixed;inset:0;background:rgba(15,42,34,.96);z-index:100;display:grid;place-items:center}
.s-lb[hidden]{display:none}
.s-lb img{max-width:92vw;max-height:86vh;object-fit:contain}
.s-lb button{position:absolute;background:none;border:1px solid rgba(242,237,228,.35);color:var(--krem);width:46px;height:46px;font-size:1.1rem}
.s-lb-x{top:16px;right:16px}.s-lb-p{left:12px;top:50%;transform:translateY(-50%)}.s-lb-n{right:12px;top:50%;transform:translateY(-50%)}
#s-lb-licznik{position:absolute;bottom:16px;left:0;right:0;text-align:center;font-size:.72rem;letter-spacing:.2em;color:var(--tekst)}

/* planer */
.p-zapis{font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--tekst)}
.p-zapis.trwa{color:var(--zloto)}.p-zapis.blad{color:#e08a75}
.p-pasek{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;padding:18px;border:1px solid var(--linia);background:var(--czern-2);margin:22px 0}
.p-pasek .pole{margin:0;flex:1 1 140px}
.p-pasek label{margin-bottom:6px}
.p-pasek input,.p-pasek select{padding:11px 12px;width:100%;background:var(--czern);border:1px solid var(--linia);color:var(--krem);font:inherit}
.p-pasek .btn{padding:12px 18px;font-size:.74rem;white-space:nowrap}
.p-liczniki{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px;margin-top:22px}
.p-liczniki div{border:1px solid var(--linia);padding:14px 16px}
.p-liczniki b{display:block;font-family:var(--serif);font-size:1.8rem;color:var(--krem);font-weight:400;line-height:1}
.p-liczniki span{font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--tekst)}
.p-uklad{display:grid;grid-template-columns:280px 1fr;gap:22px;align-items:start}
@media(max-width:820px){.p-uklad{grid-template-columns:1fr}}
.p-bez{border:1px solid var(--linia);padding:16px;position:sticky;top:132px;max-height:calc(100vh - 150px);overflow:auto}
@media(max-width:820px){.p-bez{position:static;max-height:none}}
.p-bez h3,.p-stol h3{font-family:var(--serif);font-weight:400;font-size:1.15rem;color:var(--krem);margin:0 0 10px}
.p-chipy{display:flex;flex-wrap:wrap;gap:6px}
.p-chip{border:1px solid var(--linia);background:var(--czern-2);color:var(--krem);padding:7px 11px;font-size:.84rem;font-family:inherit;transition:border-color .25s,background .25s}
.p-chip small{color:var(--tekst);margin-left:4px}
.p-chip:hover{border-color:var(--zloto)}
.p-chip.wybrany{background:var(--zloto);color:var(--czern);border-color:var(--zloto)}
.p-chip.rsvp:before{content:'✓ ';color:var(--zloto)}.p-chip.wybrany.rsvp:before{color:var(--czern)}
.p-stoly{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.p-stol{border:1px solid var(--linia);background:var(--czern-2);padding:16px;position:relative;transition:border-color .25s,transform .3s var(--ease)}
.p-stol.cel{border-color:var(--zloto);cursor:pointer}
.p-stol.cel:hover{transform:translateY(-3px)}
.p-stol.pelny{opacity:.7}
.p-stol svg{width:100%;height:auto;display:block;margin:6px 0 10px}
.p-stol .p-usun-stol{position:absolute;top:8px;right:8px;background:none;border:0;color:var(--tekst);font-size:1rem;padding:4px 8px}
.p-stol .p-usun-stol:hover{color:#e08a75}
.p-miejsca{font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--tekst)}
.p-miejsca.pelne{color:var(--zloto)}
.p-siedza{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:5px}
.p-siedza button{background:var(--czern);border:1px solid var(--linia);color:var(--krem);padding:5px 9px;font-size:.8rem;font-family:inherit}
.p-siedza button:hover{border-color:#e08a75;color:#e08a75}
.p-nazwa{background:none;border:0;border-bottom:1px dashed transparent;color:var(--krem);font-family:var(--serif);font-size:1.15rem;padding:0;width:100%}
.p-nazwa:hover,.p-nazwa:focus{border-bottom-color:var(--zloto);outline:none}
.p-tabela{width:100%;border-collapse:collapse;margin-top:18px;font-size:.92rem}
.p-tabela th{text-align:left;font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--tekst);padding:10px 8px;border-bottom:1px solid var(--linia);font-weight:500}
.p-tabela td{padding:9px 8px;border-bottom:1px solid var(--linia);vertical-align:middle;color:var(--krem-c)}
.p-tabela select,.p-tabela input{width:100%;background:var(--czern);border:1px solid var(--linia);color:var(--krem);padding:7px 8px;font:inherit;font-size:.88rem}
.p-tabela .p-x{background:none;border:0;color:var(--tekst);font-size:1rem;padding:4px 8px}
.p-tabela .p-x:hover{color:#e08a75}
.p-tabela .rsvp-znak{font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--zloto);margin-left:6px}
.p-tabela-w{overflow-x:auto}
.p-link{display:flex;gap:10px;align-items:center;flex-wrap:wrap;border:1px solid var(--linia);padding:14px 16px;margin:22px 0;background:var(--czern-2)}
.p-link code{flex:1 1 260px;word-break:break-all;font-size:.82rem}
.p-lista{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:6px}
.p-lista li{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--linia);font-size:.92rem;flex-wrap:wrap}
.p-lista li span{color:var(--tekst);font-size:.82rem}
.p-lista li.odmowa{opacity:.6}
.p-info{color:var(--tekst);font-size:.9rem;padding:16px;border:1px dashed var(--linia);margin-top:16px}
@media(max-width:600px){.s-siatka{grid-template-columns:1fr}.s-pas{height:auto;padding:12px 0;flex-wrap:wrap}.s-nav{justify-content:flex-start}.s-radia{grid-template-columns:1fr}}

/* PLAN SALI */
.pl-pasek{align-items:flex-start}
.pl-paleta{display:flex;flex-wrap:wrap;gap:6px}
.pl-paleta button{background:var(--czern);border:1px solid var(--linia);color:var(--krem);padding:8px 11px;font:inherit;font-size:.8rem}
.pl-paleta button:hover{border-color:var(--zloto)}
.p-plan{border:1px solid var(--linia);background:var(--czern);padding:10px;margin-top:4px;overflow:hidden}
.pl-svg{width:100%;height:auto;display:block;touch-action:none;user-select:none;max-height:78vh;margin:0 auto}
.pl-podloga{fill:var(--czern-2);stroke:var(--zloto);stroke-width:3}
.pl-siatka line{stroke:rgba(242,237,228,.07);stroke-width:2}
.pl-wymiar{fill:var(--tekst);font-size:26px;text-anchor:middle;font-family:var(--sans);letter-spacing:2px}
.pl-stol,.pl-el{cursor:grab}
.pl-stol:active,.pl-el:active{cursor:grabbing}
.pl-stol>rect,.pl-stol>circle:first-child{fill:var(--czern);stroke:var(--zloto);stroke-width:3}
.pl-stol .m{fill:var(--czern);stroke:var(--zloto);stroke-width:2}
.pl-stol .m.zaj{fill:var(--zloto)}
.pl-stol text,.pl-el text{fill:var(--krem);font-size:26px;text-anchor:middle;font-family:var(--sans);pointer-events:none}
.pl-stol text.mala{fill:var(--tekst);font-size:22px}
.pl-stol.pelny>rect,.pl-stol.pelny>circle:first-child{fill:color-mix(in srgb,var(--zloto) 18%,transparent)}
.pl-stol.wybrany>rect,.pl-stol.wybrany>circle:first-child,.pl-el.wybrany>rect{stroke:var(--krem);stroke-width:5}
.pl-el>rect{stroke:rgba(242,237,228,.35);stroke-width:2;stroke-dasharray:8 6}
.pl-panel{border:1px solid var(--zloto);background:var(--czern-2);padding:18px;margin-top:14px}
.pl-pola{display:flex;flex-wrap:wrap;gap:10px 14px}
.pl-pola .pole{flex:1 1 220px;margin:0}
.pl-pola .pole.w{flex:0 1 130px}
.pl-pola input,.pl-pola select{padding:10px 12px;width:100%;background:var(--czern);border:1px solid var(--linia);color:var(--krem);font:inherit}
.pl-przyciski{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.pl-przyciski .btn{font-size:.7rem;padding:9px 14px}
.pl-etykieta{font-size:.66rem;letter-spacing:.2em;text-transform:uppercase;color:var(--zloto);margin:16px 0 8px}
.p-chip.rsvp-potwierdzil:before{content:'✓ ';color:var(--zloto)}
@media print{body *{visibility:hidden}.p-plan,.p-plan *{visibility:visible}.p-plan{position:absolute;left:0;top:0;width:100%;border:0;padding:0}.pl-svg{max-height:none}
  .pl-podloga{fill:#fff;stroke:#000}.pl-siatka line{stroke:#ddd}.pl-stol>rect,.pl-stol>circle:first-child,.pl-stol .m{fill:#fff;stroke:#000}.pl-stol .m.zaj{fill:#000}
  .pl-stol text,.pl-el text,.pl-wymiar{fill:#000}.pl-el>rect{fill:#eee!important;stroke:#000}}
.pl-pokoj.glowna .pl-podloga{stroke:var(--zloto)}
.pl-pokoj:not(.glowna) .pl-podloga{stroke:color-mix(in srgb,var(--zloto) 60%,transparent);stroke-dasharray:14 8;cursor:grab}
.pl-pokoj.wybrany .pl-podloga{stroke:var(--krem);stroke-width:5;stroke-dasharray:none}
.pl-pokoj-nazwa{fill:var(--zloto);font-size:26px;font-family:var(--sans);letter-spacing:2px;pointer-events:none}
.pl-pom-btn{border-color:var(--zloto)!important}
@media print{.pl-pokoj-nazwa{fill:#000}}
.p-sms{border:1px solid var(--linia);background:var(--czern-2);padding:18px;margin-top:22px}
.p-sms textarea{width:100%;min-height:96px;background:var(--czern);border:1px solid var(--linia);color:var(--krem);padding:12px;font:inherit;font-size:.95rem;line-height:1.5;resize:vertical}
.p-sms .pl-przyciski .btn{text-decoration:none}
.p-sms-link{color:var(--zloto);text-decoration:none;border:1px solid var(--linia);padding:4px 9px;font-size:.78rem}
.p-sms-link:hover{border-color:var(--zloto)}
/* kolory miejsc: zielone = potwierdził, pomarańczowe = czeka, czerwone = odmówił (wolne), puste = wolne */
.pl-stol .m,.p-stol-svg .m{fill:var(--czern);stroke:var(--zloto)}
.p-stol-svg .m{stroke-width:1}
.pl-stol .m.zielone,.p-stol-svg .m.zielone{fill:#5fb56a;stroke:#5fb56a}
.pl-stol .m.pomaranczowe,.p-stol-svg .m.pomaranczowe{fill:#e0a24a;stroke:#e0a24a}
.pl-stol .m.czerwone,.p-stol-svg .m.czerwone{fill:#d9534f;stroke:#d9534f;animation:p-puls 1.6s ease-in-out infinite}
@keyframes p-puls{0%,100%{opacity:1}50%{opacity:.45}}
.p-legenda{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:center;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--tekst);margin:12px 0 0}
.p-legenda span{display:inline-block;width:12px;height:12px;border-radius:50%;border:1px solid var(--zloto);margin-right:6px;vertical-align:-1px}
.p-legenda .zielone{background:#5fb56a;border-color:#5fb56a}.p-legenda .pomaranczowe{background:#e0a24a;border-color:#e0a24a}.p-legenda .czerwone{background:#d9534f;border-color:#d9534f}
@media print{.pl-stol .m.zielone{fill:#5fb56a}.pl-stol .m.pomaranczowe{fill:#e0a24a}.pl-stol .m.czerwone{fill:#d9534f;animation:none}.p-legenda{visibility:visible}}
/* magnesy: strefa chodzenia przy ścianach, prowadnice w czasie przeciągania, "za ciasno" */
.pl-linia-sciany{fill:none;stroke:color-mix(in srgb,var(--zloto) 22%,transparent);stroke-width:2;stroke-dasharray:10 10;pointer-events:none}
.pl-prowadnica{stroke:var(--zloto);stroke-width:3;stroke-dasharray:14 8;pointer-events:none}
.pl-prowadnica.wyr{stroke:rgba(242,237,228,.6);stroke-width:2}
.pl-stol.ciasno>rect,.pl-stol.ciasno>circle:first-child{stroke:#d9534f;stroke-dasharray:10 6}
.p-legenda .ciasno-l{border-color:#d9534f;border-width:2px;background:transparent}
.pl-komfort-info{font-size:.82rem;color:var(--tekst);margin:-10px 0 14px;line-height:1.5}
#pl-komfort{padding:11px 12px;width:100%;background:var(--czern);border:1px solid var(--linia);color:var(--krem);font:inherit}
@media print{.pl-linia-sciany{stroke:#bbb}.pl-stol.ciasno>rect,.pl-stol.ciasno>circle:first-child{stroke:#d9534f}}
.pl-narzedzia{flex-basis:100%;display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;border-top:1px solid var(--linia);padding-top:14px;margin-top:4px}
.pl-narzedzia .pole{margin:0}
/* rejestracja, haczyki, leady */
.s-karta-szeroka{max-width:720px}
.s-zgoda{display:flex;gap:12px;align-items:flex-start;font-size:.86rem;letter-spacing:0;text-transform:none;color:var(--krem-c);margin:6px 0 12px;line-height:1.5}
.s-zgoda input{width:auto;margin-top:4px;accent-color:var(--zloto);flex:none}
.s-zgoda b{color:var(--krem);display:block;margin-bottom:2px}
.s-zgoda a{color:var(--zloto)}
.s-haczyk{border:1px solid var(--zloto);background:linear-gradient(90deg,color-mix(in srgb,var(--zloto) 12%,transparent),transparent);padding:18px 22px;display:flex;gap:16px;align-items:center;flex-wrap:wrap;margin-bottom:22px}
.s-haczyk>div{flex:1 1 320px}
.s-haczyk .eyebrow{margin:0 0 6px}
.s-haczyk b{display:block;font-family:var(--serif);font-weight:400;font-size:1.35rem;color:var(--krem);margin-bottom:4px}
.s-haczyk span{font-size:.9rem;color:var(--tekst)}
.s-haczyk .btn{font-size:.72rem;padding:11px 16px}
.s-leady{margin:26px 0 10px}
.s-leady h2{font-size:1.5rem}
.s-leady h2 small{color:var(--tekst);font-size:.9rem}
.s-leady-tabela td{vertical-align:top;font-size:.88rem}
.s-leady-tabela input{min-width:180px}
.s-leady-tabela select{min-width:130px}
.s-tel{color:var(--zloto);text-decoration:none;font-weight:500;white-space:nowrap}
.s-tel.bez-zgody{color:var(--tekst)}
tr.lead-nowy td:first-child{border-left:3px solid var(--zloto);padding-left:10px}
tr.lead-klient{opacity:.6}
@media print{.p-plan:after{content:'Plan sali · kreator weselny KUBA FILMSTORIES · kuba-filmstories.pl';display:block;text-align:center;font-size:11px;color:#000;margin-top:8px;visibility:visible}}
/* demo: limit rodzin + baner zaproszenia do rejestracji */
.demo-limit{font-size:.8rem;color:var(--tekst);margin:-10px 0 14px;letter-spacing:.04em}
.demo-limit a{color:var(--zloto)}
.demo-baner{position:fixed;inset:0;background:rgba(15,42,34,.78);z-index:200;display:flex;align-items:flex-end;justify-content:center;padding:20px;opacity:0;pointer-events:none;transition:opacity .35s ease}
.demo-baner.widoczny{opacity:1;pointer-events:auto}
.demo-baner-tresc{max-width:560px;width:100%;border:1px solid var(--zloto);background:var(--czern-2);padding:26px 28px;transform:translateY(20px);transition:transform .45s var(--ease)}
.demo-baner.widoczny .demo-baner-tresc{transform:none}
.demo-baner-tresc .eyebrow{margin-bottom:8px}
.demo-baner-tresc b{display:block;font-family:var(--serif);font-weight:400;font-size:1.5rem;color:var(--krem);line-height:1.2;margin-bottom:10px}
.demo-baner-tresc span{display:block;color:var(--tekst);font-size:.95rem;line-height:1.6;margin-bottom:16px}
.demo-baner-tresc .btn{text-decoration:none}
@media(min-width:700px){.demo-baner{align-items:center}}
/* plan sali: wyraźniejsze kolory */
.pl-podloga{fill:#0B231C;stroke:#C9918F;stroke-width:4}
.pl-siatka line{stroke:rgba(242,237,228,.13);stroke-width:2}
.pl-wymiar{fill:#e6dfd2;font-size:28px}
.pl-stol>rect,.pl-stol>circle:first-child{fill:#1A4033;stroke:#E3B7B4;stroke-width:4}
.pl-stol text,.pl-el text{fill:#fff;font-size:27px;font-weight:500}
.pl-stol text.mala{fill:#E3B7B4;font-size:23px;font-weight:400}
.pl-stol .m{fill:#0B231C;stroke:#E3B7B4;stroke-width:2.5}
.pl-stol .m.zielone{fill:#4fc95f;stroke:#4fc95f}
.pl-stol .m.pomaranczowe{fill:#f2a83b;stroke:#f2a83b}
.pl-stol .m.czerwone{fill:#ef4d48;stroke:#ef4d48}
.pl-el>rect{stroke:rgba(242,237,228,.55);stroke-width:2.5}
.pl-el.wybrany>rect,.pl-stol.wybrany>rect,.pl-stol.wybrany>circle:first-child{stroke:#fff;stroke-width:6}
.pl-linia-sciany{stroke:rgba(227,183,180,.38)}
.pl-pokoj:not(.glowna) .pl-podloga{stroke:#C9918F;stroke-dasharray:16 9}
.pl-pokoj-nazwa{fill:#E3B7B4;font-weight:500}
.p-stol-svg .m.zielone{fill:#4fc95f;stroke:#4fc95f}.p-stol-svg .m.pomaranczowe{fill:#f2a83b;stroke:#f2a83b}.p-stol-svg .m.czerwone{fill:#ef4d48;stroke:#ef4d48}
.p-legenda .zielone{background:#4fc95f;border-color:#4fc95f}.p-legenda .pomaranczowe{background:#f2a83b;border-color:#f2a83b}.p-legenda .czerwone{background:#ef4d48;border-color:#ef4d48}
/* winietki */
.wn-przel{flex:0 1 220px;padding:12px 14px;margin:0}
.wn-przel b{font-size:1rem}
.wn-podglad{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin-top:20px}
.wn-karta{aspect-ratio:9/5;background:#f7f3ec;color:#151515;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:12px;border:1px dashed rgba(0,0,0,.2)}
.wn-karta b{font-family:var(--serif);font-weight:400;font-size:1.25rem;line-height:1.1}
.wn-karta.nowoczesny b{font-family:var(--sans);font-weight:500;font-size:1.05rem;letter-spacing:.02em}
.wn-karta span{margin-top:6px;font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:#7a6a4c}
.wn-karta.wiecej{background:transparent;border:1px dashed var(--linia);color:var(--tekst);font-size:.85rem}
.s-budowa{flex-basis:100%;font-size:.8rem;color:var(--tekst)}.s-budowa a{color:var(--zloto)}
/* wgrywanie plików w panelu Kuby */
.u-panel-wgraj{padding:0 20px 20px}
.u-wybierz{display:inline-block;margin:6px 0 14px;cursor:pointer}
.u-wybierz .btn{font-size:.72rem;padding:11px 18px}
.u-postep{margin-bottom:12px}
.u-pasek{height:4px;background:var(--linia);overflow:hidden}
.u-pasek i{display:block;height:100%;width:0;background:var(--zloto);transition:width .2s linear}
.u-status{font-size:.84rem;color:var(--tekst);margin:8px 0 0}
.u-status.ok{color:#5fb56a}.u-status.blad{color:#e08a75}
.u-lista{display:grid;gap:4px;max-height:240px;overflow:auto}
.u-wpis{margin:0;font-size:.82rem;color:var(--krem-c);display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--linia);padding:6px 0}
.u-wpis span{color:var(--tekst);white-space:nowrap}
.u-wpis.blad b{color:#e08a75}
/* żywe kadry w galerii */
.s-galeria figure.zywy video{width:100%;height:100%;object-fit:cover;display:block}
.zywy-znak{position:absolute;left:8px;top:8px;width:26px;height:26px;display:grid;place-items:center;border-radius:50%;
  background:rgba(15,42,34,.65);color:var(--krem);font-size:.6rem;pointer-events:none}
.s-galeria figure.zywy.gra .zywy-znak{opacity:0;transition:opacity .4s}
#s-lb-wideo{max-width:92vw;max-height:86vh}
.u-details-glowny{border-color:var(--zloto)}
.u-details-glowny summary{color:var(--zloto)}
.u-wybor-klienta{width:100%;background:var(--czern);border:1px solid var(--linia);color:var(--krem);padding:12px;font:inherit;margin-bottom:6px}
/* moje konto + ręczne hasło pary */
.s-moje-konto{margin-top:46px;padding-top:26px;border-top:1px solid var(--linia)}
.s-moje-uklad{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:18px}
.s-moje-uklad .s-form{border:1px solid var(--linia);background:var(--czern-2);padding:20px;margin:0}
.s-moje-uklad .btn{width:auto}
.s-haslo-reczne{flex-basis:100%;margin-top:4px}
.s-haslo-reczne input{max-width:220px}
@media(max-width:700px){.s-moje-uklad{grid-template-columns:1fr}}
/* link dla rodziny */
.s-rodzina{border:1px solid var(--zloto);background:linear-gradient(90deg,color-mix(in srgb,var(--zloto) 10%,transparent),transparent);padding:20px 22px;margin:0 0 30px}
.s-rodzina.wylaczony{border-color:var(--linia);background:var(--czern-2)}
.s-rodzina-gora{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}
.s-rodzina-gora>div{flex:1 1 320px}
.s-rodzina .eyebrow{margin:0 0 6px}
.s-rodzina b{display:block;font-family:var(--serif);font-weight:400;font-size:1.3rem;color:var(--krem);line-height:1.25;margin-bottom:5px}
.s-rodzina span{display:block;font-size:.9rem;color:var(--tekst);line-height:1.55}
.s-rodzina .btn{font-size:.72rem;padding:11px 16px}
.s-rodzina .p-link{margin:16px 0 10px}
.s-rodzina-opcje{display:flex;gap:18px;flex-wrap:wrap;align-items:center}
.s-przelacznik-maly{background:none;border:0;color:var(--tekst);font:inherit;font-size:.84rem;display:flex;align-items:center;gap:10px;padding:0}
.s-przelacznik-maly .suwak{width:38px;height:21px;border-radius:11px;border:1px solid var(--zloto);position:relative;flex:none;transition:background .3s}
.s-przelacznik-maly .suwak:after{content:'';position:absolute;top:2px;left:2px;width:15px;height:15px;border-radius:50%;background:var(--zloto);transition:transform .3s var(--ease),background .3s}
.s-przelacznik-maly .suwak.wl{background:var(--zloto)}
.s-przelacznik-maly .suwak.wl:after{transform:translateX(17px);background:var(--czern)}
.s-link-maly{background:none;border:0;border-bottom:1px solid var(--linia);color:var(--tekst);font:inherit;font-size:.84rem;padding:0 0 2px}
.s-link-maly:hover{color:var(--zloto);border-color:var(--zloto)}
/* wizytówka na stronie dla rodziny */
.s-wizytowka{margin-top:50px;padding:30px 0 10px;border-top:1px solid var(--linia);display:grid;grid-template-columns:1.3fr .7fr;gap:30px;align-items:center}
.s-wizytowka h2{font-size:clamp(1.5rem,3vw,2.1rem);margin:6px 0 10px}
.s-wizytowka-btn{display:flex;flex-direction:column;gap:10px}
.s-wizytowka-btn .btn{text-align:center}
@media(max-width:760px){.s-wizytowka{grid-template-columns:1fr}}
/* panel haseł i dostępów */
.s-dostepy{border-color:var(--zloto)}
.s-dostepy summary{color:var(--zloto)}
.s-dostepy-form{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end;margin:10px 0 0}
.s-dostepy-form .pole{flex:1 1 240px;margin:0}
.s-dostepy-form select,.s-dostepy-form input{width:100%;background:var(--czern);border:1px solid var(--linia);color:var(--krem);padding:12px;font:inherit}
.s-dostepy-btn{display:flex;gap:8px;flex-wrap:wrap;flex-basis:100%}
.s-dostepy-btn .btn{font-size:.72rem;padding:12px 16px}
/* lista par w centrum */
.s-lista-par{margin-top:34px}
.s-lista-par h2{font-size:1.5rem}
.s-lista-par h2 small{color:var(--tekst);font-size:.9rem}
.s-para h3{font-family:var(--serif);font-weight:400;font-size:1.45rem;color:var(--krem);margin:0;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.s-pigulka{font-size:.58rem;letter-spacing:.18em;text-transform:uppercase;padding:4px 9px;border:1px solid var(--linia);color:var(--tekst)}
.s-pigulka.st-nowy{border-color:var(--zloto);color:var(--zloto)}
.s-pigulka.st-klient{border-color:#5fb56a;color:#5fb56a}
.s-pigulka.st-zainteresowani{border-color:#e0a24a;color:#e0a24a}
.s-pigulka.st-niezainteresowani{opacity:.6}
.s-para .s-meta{line-height:1.7}
.s-para .s-meta a{color:var(--krem-c)}
.s-akcje .btn{text-decoration:none}
/* papeteria: wybór stylu i podgląd */
.pap-przelacz{display:flex;gap:6px;margin:18px 0 6px}
.pap-przelacz button{background:var(--czern);border:1px solid var(--linia);color:var(--tekst);font:inherit;font-size:.8rem;padding:11px 18px}
.pap-przelacz button.akt{border-color:var(--zloto);color:var(--krem);background:var(--czern-2)}
.pap-style{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px;margin-bottom:8px}
.pap-styl{background:none;border:1px solid var(--linia);padding:8px;display:block;text-align:center;transition:border-color .3s,transform .3s var(--ease)}
.pap-styl:hover{border-color:color-mix(in srgb,var(--zloto) 60%,transparent);transform:translateY(-2px)}
.pap-styl.wybrany{border-color:var(--zloto);box-shadow:0 0 0 1px var(--zloto)}
.pap-styl svg{width:100%;height:auto;display:block}
.pap-styl span{display:block;margin-top:8px;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--tekst)}
.pap-styl.wybrany span{color:var(--zloto)}
.pap-ustawienia{align-items:flex-start}
.pap-podglad{max-width:420px;margin:6px 0 18px;box-shadow:0 18px 50px rgba(0,0,0,.45)}
.pap-podglad svg{width:100%;height:auto;display:block}
.demo-ramka .pap-podglad{max-width:380px}
/* strona dla rodziny: mocniejsza marka */
.s-hero-rodzina{text-align:center;padding:36px 0 30px}
.s-hero-rodzina .s-znak{width:76px;height:76px;filter:invert(1);opacity:.92;margin-bottom:14px}
.s-hero-rodzina .s-hero-meta{justify-content:center}
.s-stopka-rodzina .wrap{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.s-stopka-rodzina img{filter:invert(1);opacity:.8}
.s-stopka-rodzina b{color:var(--krem);font-family:var(--serif);font-weight:400;letter-spacing:.06em}
.s-stopka-rodzina .btn{margin-left:auto;font-size:.7rem;padding:10px 14px}
.s-link-rodziny{display:flex;align-items:center;gap:8px;flex-basis:100%;margin-top:4px}
.s-link-rodziny code{font-size:.78rem;word-break:break-all;color:var(--zloto)}
.s-link-rodziny .btn{font-size:.66rem;padding:8px 12px}
.pap-podglad.pap-dwie{max-width:560px;display:grid;gap:10px}
.pap-podglad textarea{width:100%}
.pap-ustawienia textarea{background:var(--czern);border:1px solid var(--linia);color:var(--krem);padding:10px;font:inherit;font-size:.92rem}
/* plan dnia */
.dz-formularz{margin-top:6px}
.dz-miejsca{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px;margin-bottom:14px}
.dz-miejsce{border:1px solid var(--linia);padding:12px 14px;background:var(--czern-2);position:relative}
.dz-miejsce.znalezione{border-color:rgba(95,181,106,.5)}
.dz-miejsce label{display:block;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--tekst);margin-bottom:6px}
.dz-miejsce input{width:100%;background:var(--czern);border:1px solid var(--linia);color:var(--krem);padding:10px;font:inherit;font-size:.92rem}
.dz-ok{position:absolute;top:10px;right:12px;font-size:.66rem;color:#5fb56a;letter-spacing:.1em}
.dz-brak{color:var(--tekst);font-size:.78rem}
.dz-status{font-size:.84rem;color:var(--tekst);align-self:center}
.dz-status.ok{color:#5fb56a}.dz-status.blad{color:#e08a75}
.dz-trasy{list-style:none;margin:14px 0 8px;padding:0;display:grid;gap:6px}
.dz-trasy li{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;border-bottom:1px solid var(--linia);padding:8px 0;font-size:.9rem;color:var(--krem-c)}
.dz-trasy b{color:var(--krem);font-weight:500}
.dz-trasy span{color:var(--tekst)}.dz-trasy i{color:var(--zloto);font-style:normal}
.dz-ustawienia small{display:block;font-size:.66rem;color:var(--tekst);margin-top:3px}
.dz-lista{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:4px}
.dz-poz{display:grid;grid-template-columns:78px 1fr auto auto;gap:12px;align-items:center;border-bottom:1px solid var(--linia);padding:8px 0}
.dz-godz{background:var(--czern);border:1px solid var(--linia);color:var(--zloto);font-family:var(--serif);font-size:1.2rem;padding:8px;text-align:center;width:100%}
.dz-tresc{display:grid;gap:3px;min-width:0}
.dz-tytul{background:none;border:0;color:var(--krem);font:inherit;font-size:1rem;font-weight:500;padding:2px 0;width:100%}
.dz-opis{background:none;border:0;color:var(--tekst);font:inherit;font-size:.84rem;padding:2px 0;width:100%}
.dz-tytul:focus,.dz-opis:focus{outline:none;border-bottom:1px solid var(--zloto)}
.dz-kto{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--zloto);white-space:nowrap}
.dz-zatw{border:1px solid #5fb56a;color:#bfe3c4;padding:12px 16px;font-size:.9rem;margin:14px 0 0}
.dz-tabela-admin td{font-size:.84rem}
.s-liczniki .licznik-ok b{color:#5fb56a}
@media(max-width:700px){.dz-poz{grid-template-columns:70px 1fr auto}.dz-kto{display:none}}

/* przełączniki: stan widoczny od razu (bez dopisywania klasy z JS) */
.przelacznik:has(input:checked){border-color:var(--zloto);background:var(--czern-2)}
.przelacznik:has(input:checked) .suwak{background:var(--zloto)}
.przelacznik:has(input:checked) .suwak:after{transform:translateX(20px);background:var(--czern)}
.przelacznik input:focus-visible ~ .suwak{outline:2px solid var(--zloto);outline-offset:2px}
.rsvp-drobne{display:block;margin-top:6px;font-size:.76rem;color:var(--tekst);letter-spacing:0;text-transform:none;line-height:1.5}
.rsvp-rodo{margin-top:22px;padding-top:16px;border-top:1px solid var(--linia);font-size:.78rem;line-height:1.65;color:var(--tekst)}
.rsvp-rodo a{color:var(--zloto)}
/* ruch na stronie */
.s-ruch{margin-top:40px;padding-top:26px;border-top:1px solid var(--linia)}
.s-ruch h2{font-size:1.5rem}
.s-ruch-uklad{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:26px;margin-top:22px}
@media(max-width:860px){.s-ruch-uklad{grid-template-columns:1fr}}
.s-slupki{display:flex;align-items:flex-end;gap:8px;height:140px;margin-top:10px}
.s-slupek{flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;height:100%;gap:4px}
.s-slupek i{display:block;width:100%;background:linear-gradient(180deg,var(--zloto),color-mix(in srgb,var(--zloto) 35%,transparent));min-height:3px}
.s-slupek span{font-size:.62rem;color:var(--tekst);letter-spacing:.06em}
.s-slupek b{font-size:.72rem;color:var(--krem);font-weight:500}
.s-ruch .p-lista li{padding:8px 10px}
.s-ruch .p-lista b{font-weight:400;color:var(--krem-c);word-break:break-all}
.s-ruch .p-lista span{color:var(--zloto);font-size:.9rem}

/* ===== publiczny kreator: Wasz ślub + pamięć przeglądarki ===== */
.k-slub{display:grid;grid-template-columns:2fr 1fr 2fr;gap:12px;align-items:end;padding:18px;border:1px solid var(--linia);background:var(--czern-2);margin:0 0 14px}
.k-slub .pole{margin:0}
.k-slub label{display:block;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--tekst);margin-bottom:6px}
.k-slub input{width:100%;padding:11px 12px;background:var(--czern);border:1px solid var(--linia);color:var(--krem);font:inherit;color-scheme:dark}
.sl-odliczanie{grid-column:1/-1;margin:0;font-family:var(--serif);font-style:italic;color:var(--zloto);font-size:1.05rem}
.sl-odliczanie:empty{display:none}
#p-pamiec{margin:0 0 26px}
.pm-przyklad{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;margin:0 0 12px;padding:12px 16px;border-left:2px solid var(--zloto);background:var(--czern-2);color:var(--krem);font-size:.95rem}
.pm-przyklad b{font-weight:500}
.pm-zgoda{display:flex;gap:18px 26px;flex-wrap:wrap;align-items:center;justify-content:space-between;padding:18px 20px;border:1px solid var(--zloto);background:var(--czern-2);margin:0 0 12px}
.pm-zgoda-tekst{flex:1 1 420px}
.pm-zgoda b{display:block;color:var(--krem);font-weight:500;margin-bottom:4px}
.pm-zgoda span{display:block;color:var(--krem-c);font-size:.95rem}
.pm-zgoda small{display:block;color:var(--tekst);font-size:.8rem;line-height:1.55;margin-top:10px}
.pm-zgoda small a,.pm-uwaga a{color:var(--zloto)}
.pm-zgoda .pl-przyciski{margin:0}
.pm-pasek{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.pm-stan{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--zloto);margin-right:8px}
.btn.pm-maly{font-size:.68rem;padding:9px 14px;text-decoration:none}
.pm-uwaga{margin-top:12px}
.pm-link{background:none;border:0;padding:0;color:var(--tekst);text-decoration:underline;font:inherit;font-size:.86rem;cursor:pointer}
.pm-link:hover{color:#e08a75}
@media(max-width:700px){.k-slub{grid-template-columns:1fr}.pm-zgoda .btn{width:100%;text-align:center}}

/* plan dnia, „Godziny i długości”: równa siatka zamiast rzędu wyrównanego do dołu */
.p-pasek.dz-ustawienia{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px 14px;align-items:start;padding:20px}
.dz-ustawienia .pole{display:flex;flex-direction:column;min-width:0}
.dz-ustawienia .pole label{min-height:2.9em;display:flex;align-items:flex-end;line-height:1.45;margin-bottom:8px}
.dz-ustawienia input,.dz-ustawienia select{height:48px;box-sizing:border-box;padding:0 12px}
.dz-ustawienia small{min-height:1.3em}
.dz-przelaczniki{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.dz-przelaczniki .wn-przel{flex:none;min-height:64px;padding:0 18px}
.dz-przelaczniki .wn-przel b{font-size:1.15rem;white-space:nowrap}
@media(max-width:760px){.p-pasek.dz-ustawienia{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px}.dz-ustawienia .pole label{min-height:4.35em}}
@media(max-width:520px){.dz-przelaczniki{grid-template-columns:1fr}}

/* papeteria: style po cztery w rzędzie, ustawienia w równej siatce, przełączniki w osobnym rzędzie */
.pap-style{grid-template-columns:repeat(4,minmax(0,1fr))}
.p-pasek.pap-ustawienia{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px 14px;align-items:start;padding:20px}
.pap-ustawienia .pole{display:flex;flex-direction:column;min-width:0}
.pap-ustawienia .pole label{margin-bottom:8px}
.pap-ustawienia input,.pap-ustawienia select{height:48px;box-sizing:border-box;padding:0 12px}
.pap-ustawienia .pole-szer,.pap-info,.pap-przelaczniki{grid-column:1/-1}
.pap-ustawienia textarea{width:100%;box-sizing:border-box}
.pap-info{margin:0;align-self:end}
.pap-przelaczniki{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.pap-przelaczniki .wn-przel{flex:none;min-height:64px;padding:10px 18px}
.pap-przelaczniki .wn-przel b{font-size:1.15rem;white-space:nowrap}
@media(max-width:760px){.pap-style{grid-template-columns:repeat(2,minmax(0,1fr))}.p-pasek.pap-ustawienia{grid-template-columns:repeat(2,minmax(0,1fr));padding:16px}}
@media(max-width:520px){.p-pasek.pap-ustawienia,.pap-przelaczniki{grid-template-columns:1fr}}

/* przyciski pod opisem kreatora: równy rząd, po zawinięciu bez przesunięcia */
.kreator-przyciski{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}


/* nowy wygląd (02.10.2026): na stronie przyciski to podkreślone linki ze strzałką,
   ale w samym narzędziu potrzebne są zwykłe, wyraźne przyciski */
.demo-ramka .btn{text-decoration:none;font-size:.82rem;font-weight:500;padding:10px 16px;border:1px solid var(--linia);background:color-mix(in srgb,var(--krem) 6%,transparent);color:var(--krem)}
.demo-ramka .btn:after{content:none}
.demo-ramka .btn.zloty{background:var(--burgund);border-color:var(--burgund);color:var(--krem)}
.demo-ramka .btn.zloty:hover{background:#9C2A40}
.demo-ramka .btn.pusty:hover{border-color:var(--krem)}
.demo-ramka .btn.pm-maly{font-size:.72rem;padding:8px 13px}
/* papeteria: grupy wzorów i kolor ozdób (02.10.2026) */
.pap-grupa{font-family:var(--serif);font-size:1.15rem;color:var(--krem);margin:14px 0 10px}
.pap-grupa:first-of-type{margin-top:4px}
.pap-kolory{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:2px 0 6px}
.pap-kolor{width:34px;height:34px;border-radius:50%;border:2px solid color-mix(in srgb,var(--krem) 25%,transparent);padding:0;cursor:pointer;position:relative;transition:transform .3s var(--ease),border-color .3s}
.pap-kolor:hover{transform:scale(1.08)}
.pap-kolor.wybrany{border-color:var(--krem);box-shadow:0 0 0 3px color-mix(in srgb,var(--krem) 22%,transparent)}
.pap-kolor span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.pap-kolor.domyslny:after{content:'';position:absolute;inset:9px;border-radius:50%;border:1.5px solid rgba(255,255,255,.85)}
.pap-kolor-wlasny{display:inline-flex;align-items:center;gap:8px;font-size:.78rem;color:var(--tekst);cursor:pointer;margin-left:4px}
.pap-kolor-wlasny input{width:34px;height:34px;border:2px solid color-mix(in srgb,var(--krem) 25%,transparent);border-radius:50%;padding:0;background:none;cursor:pointer;overflow:hidden}
.pap-kolor-wlasny input::-webkit-color-swatch-wrapper{padding:0}
.pap-kolor-wlasny input::-webkit-color-swatch{border:0;border-radius:50%}
.pap-kolor-wlasny input::-moz-color-swatch{border:0;border-radius:50%}
/* tryb aplikacji (kreator dodany do ekranu telefonu): sam kreator, bez reszty strony */
html.tryb-app .strona-hero,html.tryb-app .kreator-pasek,html.tryb-app .klatki,html.tryb-app #aplikacja,
html.tryb-app #prywatnosc,html.tryb-app .cta-pas,html.tryb-app footer,html.tryb-app .nav-akcje{display:none!important}
html.tryb-app #kreator{border-top:0!important;padding-top:104px}
html.tryb-app #kreator .eyebrow{display:none}
/* sekcja „Kreator jako aplikacja” */
.app-uklad{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(30px,5vw,70px);align-items:center}
@media(max-width:900px){.app-uklad{grid-template-columns:1fr}}
.app-kroki b{color:var(--krem);font-weight:500}
.pap-grupa span{font-family:var(--sans);font-size:.78rem;color:var(--tekst);margin-left:8px}
/* PEŁNY EKRAN: układanie stołów palcem (02.10.2026) */
html.pe-otwarty,html.pe-otwarty body{overflow:hidden;overscroll-behavior:none}
#pe-warstwa{position:fixed;inset:0;z-index:450}
.pe{position:absolute;inset:0;display:flex;flex-direction:column;background:var(--czern);color:var(--krem);font-family:var(--sans)}
.pe,.pe *{cursor:auto}
.pe button,.pe select,.pe a{cursor:pointer}
.pe g[data-obiekt]{cursor:grab}
.pe-gora{display:flex;align-items:center;gap:12px;padding:10px 14px;padding-top:max(10px,env(safe-area-inset-top));border-bottom:1px solid var(--linia);background:var(--grafit);flex:none}
.pe-x{width:42px;height:42px;flex:none;border:1px solid var(--linia);background:none;color:var(--krem);font-size:1.05rem;border-radius:50%;transition:border-color .3s}
.pe-x:hover{border-color:var(--krem)}
.pe-tytul{display:flex;flex-direction:column;min-width:0;flex:1}
.pe-tytul b{font-family:var(--serif);font-weight:400;font-size:1.25rem;line-height:1.15}
.pe-tytul span{font-size:.74rem;color:var(--tekst);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pe-tytul em{font-style:normal;color:#ef8a85}
.pe-zapis{font-size:.7rem;color:var(--tekst);white-space:nowrap}
.pe-plotno{position:relative;flex:1;min-height:0;overflow:hidden;touch-action:none;background:var(--czern)}
.pe .p-plan{position:absolute;inset:0;border:0;padding:0;margin:0;background:none}
.pe .pl-svg{width:100%;height:100%;max-height:none;touch-action:none}
.pe-zoom{position:absolute;right:12px;top:12px;display:flex;flex-direction:column;gap:8px}
.pe-zoom button{width:46px;height:46px;border-radius:50%;border:1px solid var(--linia);background:color-mix(in srgb,var(--grafit) 88%,transparent);color:var(--krem);font-size:1.3rem;line-height:1;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:border-color .3s}
.pe-zoom button:hover{border-color:var(--krem)}
.pe-podp{position:absolute;left:50%;top:14px;transform:translateX(-50%);width:max-content;max-width:min(440px,calc(100% - 96px));margin:0;padding:10px 14px;background:color-mix(in srgb,var(--grafit) 92%,transparent);border:1px solid var(--linia);font-size:.8rem;line-height:1.45;color:var(--krem-c);text-align:center;pointer-events:none;transition:opacity 1.2s ease}
.pe-podp.znika{opacity:0}
.pe-dol{border-top:1px solid var(--linia);background:var(--grafit);padding:10px 0;padding-bottom:max(10px,env(safe-area-inset-bottom));flex:none}
.pe-paleta{display:flex;gap:8px;overflow-x:auto;padding:0 14px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.pe-paleta::-webkit-scrollbar{display:none}
.pe-paleta button{flex:none;white-space:nowrap;padding:11px 14px;border:1px solid var(--linia);background:color-mix(in srgb,var(--krem) 6%,transparent);color:var(--krem);font:inherit;font-size:.84rem;transition:border-color .3s}
.pe-paleta button:hover{border-color:var(--krem)}
.pe-paleta button[data-dodaj-stol]{border-color:color-mix(in srgb,var(--zloto) 60%,transparent)}
.pe-arkusz{position:absolute;left:0;right:0;bottom:0;max-height:54%;overflow:auto;overscroll-behavior:contain;background:var(--grafit);border-top:1px solid var(--linia);border-radius:18px 18px 0 0;padding:0 16px 16px;padding-bottom:max(16px,env(safe-area-inset-bottom));box-shadow:0 -14px 40px color-mix(in srgb,var(--czern) 60%,transparent);transform:translateY(105%);transition:transform .5s var(--ease);z-index:2}
.pe-arkusz.otwarty{transform:none}
.pe-arkusz-gora{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 0 10px;background:var(--grafit);z-index:1}
.pe-arkusz-gora:before{content:'';position:absolute;left:50%;top:7px;width:38px;height:4px;margin-left:-19px;border-radius:2px;background:var(--linia)}
.pe-arkusz-gora b{font-family:var(--serif);font-weight:400;font-size:1.2rem;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pe .pl-panel{margin-top:0;padding:14px;background:var(--czern);border-color:var(--linia)}
.pe .pl-pola .pole{flex:1 1 140px}
.pe .pl-pola .pole.w{flex:1 1 100px}
.pe .btn{text-decoration:none;font-family:var(--sans);font-size:.82rem;font-weight:500;padding:10px 16px;border:1px solid var(--linia);background:color-mix(in srgb,var(--krem) 6%,transparent);color:var(--krem);letter-spacing:0;text-transform:none}
.pe .btn:after{content:none}
.pe .btn.zloty{background:var(--burgund);border-color:var(--burgund);color:var(--krem)}
.pe .btn.zloty:hover{background:#9C2A40}
.pe .btn.pusty:hover{border-color:var(--krem)}
.pe .p-info{margin-top:0}
@media(min-width:900px){
  .pe-arkusz{top:63px;left:auto;width:390px;max-height:none;border-radius:0;border-top:0;border-left:1px solid var(--linia);box-shadow:-14px 0 40px color-mix(in srgb,var(--czern) 50%,transparent);transform:translateX(105%)}
  .pe-arkusz.otwarty{transform:none}
  .pe-arkusz-gora:before{content:none}
}
/* mały plan na stronie: na telefonie tylko podgląd, stuknięcie otwiera pełny ekran */
.p-plan{position:relative}
.pl-dotknij{display:none}
@media (pointer:coarse){
  #p-sala .p-plan .pl-svg{touch-action:auto}
  #p-sala .pl-dotknij{display:block;position:absolute;left:50%;bottom:14px;transform:translateX(-50%);padding:9px 14px;background:color-mix(in srgb,var(--grafit) 92%,transparent);border:1px solid var(--linia);color:var(--krem);font-size:.78rem;white-space:nowrap;pointer-events:none}
}
@media print{.pl-dotknij{display:none!important}}
.pm-app{border-color:var(--zloto)}
.pe .btn.pm-maly{font-size:.76rem;padding:9px 14px}
html.tryb-app .odslon{opacity:1;transform:none;transition:none}
@media (max-height:520px){
  .pe-gora{padding:6px 12px;padding-top:max(6px,env(safe-area-inset-top))}
  .pe-x{width:36px;height:36px}
  .pe-tytul b{font-size:1.05rem}
  .pe-dol{padding:6px 0;padding-bottom:max(6px,env(safe-area-inset-bottom))}
  .pe-paleta button{padding:8px 12px;font-size:.8rem}
  .pe-zoom{gap:6px;top:8px}
  .pe-zoom button{width:40px;height:40px}
  .pe-podp{top:8px;padding:7px 12px}
  .pe-arkusz{max-height:70%}
}
/* =====================================================================
   TELEFON (02.10.2026): kreator ma działać jak aplikacja
   ===================================================================== */
.k-dol{display:none}
.tylko-tel{display:none}
@media (max-width:760px){
  /* więcej miejsca na treść: jedna ramka zamiast trzech */
  #kreator .wrap{padding-left:12px;padding-right:12px}
  #kreator .demo-ramka{padding:12px;margin-top:22px}
  .p-pasek{padding:14px;margin:16px 0}
  .pl-panel{padding:14px}
  /* iPhone nie powiększa strony przy pisaniu, gdy pole ma co najmniej 16 px */
  .demo-ramka input,.demo-ramka select,.demo-ramka textarea,.pe input,.pe select,.pe textarea,#druk-warstwa input{font-size:16px!important}
  .demo-ramka input,.demo-ramka select{min-height:46px}
  /* przyciski pod palec */
  .demo-ramka .btn{min-height:46px;display:inline-flex;align-items:center;justify-content:center}
  .demo-ramka .btn.pm-maly{min-height:42px;font-size:.8rem;padding:9px 14px}
  .p-chip{min-height:42px;padding:9px 14px;font-size:.9rem}
  .pl-paleta button{min-height:44px}
  /* dolny pasek zamiast górnych zakładek */
  #kreator .demo-ramka .s-zakladki{display:none}
  #kreator{padding-bottom:110px}
  .k-dol{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:300;
    background:color-mix(in srgb,var(--grafit) 94%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
    border-top:1px solid var(--linia);padding:6px 4px;padding-bottom:max(6px,env(safe-area-inset-bottom));
    transform:translateY(110%);transition:transform .5s var(--ease)}
  html.k-dol-widoczny .k-dol,html.tryb-app .k-dol{transform:none}
  html.pe-otwarty .k-dol,html.drukuje .k-dol{display:none}
  .k-dol button{display:flex;flex-direction:column;align-items:center;gap:3px;min-height:52px;justify-content:center;background:none;border:0;color:var(--tekst);font:inherit;font-size:.62rem;letter-spacing:.02em;padding:4px 0;border-radius:10px;transition:color .3s,background .3s}
  .k-dol svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
  .k-dol button.aktywna{color:var(--krem);background:color-mix(in srgb,var(--krem) 8%,transparent)}
  .k-dol button.aktywna svg{stroke:var(--zloto)}
  html.k-dol-widoczny .do-gory,html.tryb-app .do-gory{bottom:calc(84px + env(safe-area-inset-bottom))}
  /* goście jako karty */
  .tylko-duzy{display:none!important}
  .tylko-tel{display:flex}
  .p-tabela-w{overflow:visible}
  .p-tabela,.p-tabela tbody{display:block}
  .p-tabela thead{display:none}
  .p-tabela tr.p-gosc{display:grid;grid-template-columns:1fr 92px;gap:12px 10px;padding:14px;margin-bottom:12px;border:1px solid var(--linia);background:var(--czern);position:relative}
  .p-tabela tr.p-gosc.st-potwierdzil{border-left:3px solid #5fb56a}
  .p-tabela tr.p-gosc.st-odmowil{border-left:3px solid #d9534f;opacity:.85}
  .p-tabela tr.p-gosc.st-zaproszony{border-left:3px solid #e0a24a}
  .p-tabela td{display:block;padding:0;border:0}
  .p-tabela td[data-l]:before{content:attr(data-l);display:block;font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;color:var(--tekst);margin-bottom:6px}
  .p-tabela .g-imie{grid-column:1/-1;font-family:var(--serif);font-size:1.25rem;line-height:1.25;color:var(--krem);padding-right:46px;order:0}
  .p-tabela .g-status{grid-column:1/-1;order:1}
  .p-tabela .g-grupa{order:2}.p-tabela .g-osoby{order:3}
  .p-tabela .g-stol{grid-column:1/-1;order:4}
  .p-tabela .g-tel{grid-column:1/-1;order:5}
  .p-tabela .g-uwagi{grid-column:1/-1;order:6}
  .p-tabela .g-usun{position:absolute;top:6px;right:6px}
  .p-tabela .p-x{width:44px;height:44px;font-size:1.1rem}
  .p-tabela select,.p-tabela input{padding:10px 12px;min-height:46px}
  .p-seg{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}
  .p-seg label{position:relative;margin:0;display:block}
  .p-seg input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
  .p-seg span{display:flex;align-items:center;justify-content:center;min-height:46px;border:1px solid var(--linia);font-size:.86rem;letter-spacing:0;text-transform:none;color:var(--krem-c);transition:background .3s,border-color .3s,color .3s}
  .p-seg .st-zaproszony input:checked+span{background:color-mix(in srgb,#e0a24a 22%,transparent);border-color:#e0a24a;color:var(--krem)}
  .p-seg .st-potwierdzil input:checked+span{background:color-mix(in srgb,#5fb56a 24%,transparent);border-color:#5fb56a;color:var(--krem)}
  .p-seg .st-odmowil input:checked+span{background:color-mix(in srgb,#d9534f 24%,transparent);border-color:#d9534f;color:var(--krem)}
  .p-seg input:focus-visible+span{outline:2px solid var(--zloto);outline-offset:2px}
  /* liczniki po dwa w rzędzie */
  .p-liczniki{grid-template-columns:repeat(2,minmax(0,1fr))}
  /* papeteria: rzędy przesuwane palcem zamiast długiej siatki */
  .pap-style{display:flex!important;gap:10px;overflow-x:auto;scroll-snap-type:x mandatory;margin:0 -12px;padding:0 12px 8px;scrollbar-width:none;-webkit-overflow-scrolling:touch}
  .pap-style::-webkit-scrollbar{display:none}
  .pap-styl{flex:0 0 46%;scroll-snap-align:start}
  .pap-grupa span{display:block;margin:4px 0 0}
  /* plan sali: dodawanie stołów jest w pełnym ekranie, tutaj tylko wymiary i duży przycisk */
  .pl-pole-paleta{display:none!important}
  .pl-narzedzia{flex-direction:column;align-items:stretch}
  .pl-narzedzia .btn.zloty{width:100%}
  .pm-zgoda{padding:16px}
}
@media (max-width:760px) and (pointer:coarse){
  #p-sala #pl-obiekt{display:none}
}
.pm-instaluj{display:none}
@media (pointer:coarse){.pm-instaluj{display:inline-flex}}
html.tryb-app header .nav{padding-top:8px;padding-bottom:8px}
/* druk w tej samej stronie (zainstalowana aplikacja) */
#druk-warstwa{position:fixed;inset:0;z-index:460;overflow:auto;background:#e7e3db;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
html.drukuje,html.drukuje body{overflow:hidden}
.druk-pasek{position:sticky;top:0;z-index:2;display:flex;gap:10px;justify-content:space-between;padding:10px 12px;padding-top:max(10px,env(safe-area-inset-top));background:#0F2A22}
.druk-pasek button{min-height:46px;padding:10px 16px;border:1px solid #27493D;background:none;color:#F4EEE2;font:500 .9rem var(--sans)}
.druk-pasek .druk-glowny{background:#8A2236;border-color:#8A2236}
.druk-tresc{padding:8px}
@media print{
  html.drukuje body>*:not(#druk-warstwa){display:none!important}
  html.drukuje #druk-warstwa,html.drukuje #druk-warstwa *{visibility:visible!important}
  #druk-warstwa{position:static;overflow:visible;background:#fff}
  .druk-pasek{display:none!important}
  .druk-tresc{padding:0;zoom:1!important}
}
/* lista gości: wyszukiwarka i filtr (wszędzie), zwarte karty (telefon) */
.g-filtr{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:18px}
.g-filtr input{flex:1 1 220px;padding:11px 12px;background:var(--czern);border:1px solid var(--linia);color:var(--krem);font:inherit}
.g-filtr-st{display:flex;gap:6px;flex-wrap:wrap}
.g-filtr-st button{padding:9px 12px;border:1px solid var(--linia);background:none;color:var(--krem-c);font:inherit;font-size:.82rem;transition:border-color .3s,background .3s}
.g-filtr-st button b{font-weight:500;color:var(--zloto);margin-left:2px}
.g-filtr-st button.akt{border-color:var(--krem);background:color-mix(in srgb,var(--krem) 8%,transparent);color:var(--krem)}
@media (max-width:760px){
  .g-filtr input{flex-basis:100%;min-height:46px}
  .g-filtr-st{display:grid;grid-template-columns:repeat(4,1fr);width:100%}
  .g-filtr-st button{min-height:44px;padding:6px 2px;font-size:.74rem;display:flex;flex-direction:column;align-items:center;gap:1px}
  .g-filtr-st button b{font-family:var(--serif);font-size:1.05rem;margin:0}
  .p-tabela .g-skrot{display:block;font-family:var(--sans);font-size:.78rem;color:var(--tekst);margin-top:4px;line-height:1.4}
  .p-tabela tr.p-gosc:not(.rozw) .g-grupa,.p-tabela tr.p-gosc:not(.rozw) .g-osoby,.p-tabela tr.p-gosc:not(.rozw) .g-stol,
  .p-tabela tr.p-gosc:not(.rozw) .g-tel,.p-tabela tr.p-gosc:not(.rozw) .g-uwagi{display:none}
  .p-tabela .g-rozwin{grid-column:1/-1;order:9}
  .p-tabela .g-rozwin button{width:100%;min-height:40px;background:none;border:0;border-top:1px solid var(--linia);color:var(--zloto);font:inherit;font-size:.82rem;padding-top:10px}
  html.k-dol-widoczny .do-gory,html.tryb-app .do-gory{display:none!important}
}
@media (max-width:760px){.p-tabela .g-status:before{display:none}}
@media (max-width:760px){
  .p-stol .p-usun-stol{width:44px;height:44px;font-size:1.05rem}
  .p-stol [data-zdejmij]{min-height:40px;padding:8px 12px}
  .pap-kolor{width:42px;height:42px}
  .pap-kolor-wlasny input{width:42px;height:42px}
  .pap-kolory{gap:9px}
}

/* =====================================================================
   ORGANIZER (02.10.2026): pasek startowy, zadania, budżet, menu plików
   ===================================================================== */
/* dane ślubu zwinięte do jednej linii */
.k-slub.zwiniety{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px}
.sl-skrot{min-width:0}
.sl-skrot b{display:block;font-family:var(--serif);font-weight:400;font-size:1.35rem;color:var(--krem);line-height:1.2}
.sl-skrot span{display:block;font-size:.84rem;color:var(--tekst);margin-top:2px}
.sl-gotowe{grid-column:1/-1}
/* pasek startowy */
.k-start{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 14px}
.k-kafel{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;min-height:64px;border:1px solid var(--linia);background:var(--czern);color:var(--krem);font:inherit;text-align:left;transition:border-color .4s var(--ease),background .4s var(--ease)}
.k-kafel:hover{border-color:color-mix(in srgb,var(--zloto) 70%,transparent)}
.k-kafel b{font-family:var(--serif);font-weight:400;font-size:1.6rem;line-height:1;color:var(--krem)}
.k-kafel b small{font-size:.9rem;color:var(--tekst);margin-left:1px}
.k-kafel span{font-size:.7rem;color:var(--tekst);line-height:1.3}
.k-kafel:first-child b{color:var(--zloto)}
/* przełącznik Zadania / Budżet */
.org-przelacz{display:inline-grid;grid-template-columns:1fr 1fr;border:1px solid var(--linia);margin:6px 0 18px;min-width:min(320px,100%)}
.org-przelacz button{padding:11px 18px;background:none;border:0;color:var(--tekst);font:inherit;font-size:.9rem;transition:background .4s var(--ease),color .4s var(--ease)}
.org-przelacz button.akt{background:var(--krem);color:var(--czern)}
.org-postep{margin-bottom:14px}
.org-postep>div:first-child{font-size:.9rem;color:var(--krem-c);margin-bottom:8px}
.org-postep b{font-family:var(--serif);font-weight:400;font-size:1.4rem;color:var(--krem)}
.pasek-postepu{height:4px;background:color-mix(in srgb,var(--krem) 12%,transparent);border-radius:2px;overflow:hidden}
.pasek-postepu span{display:block;height:100%;background:var(--zloto);border-radius:2px;transition:width .8s var(--ease)}
.org-wskazowka{font-size:.88rem;color:var(--tekst);border-left:2px solid var(--linia);padding:4px 0 4px 12px;margin:10px 0 14px}
.org-akcje{margin-top:16px}
/* zadania */
.zad-lista{display:flex;flex-direction:column;border-top:1px solid var(--linia)}
.zad{display:flex;align-items:center;gap:10px;border-bottom:1px solid var(--linia);padding:4px 0;transition:opacity .45s var(--ease)}
.zad-pole{display:flex;align-items:center;gap:12px;flex:1;min-width:0;min-height:52px;cursor:pointer;margin:0;text-transform:none;letter-spacing:0;font-size:inherit;color:inherit}
.zad-pole input{position:absolute;opacity:0;width:1px;height:1px}
.zad-znak{flex:none;width:24px;height:24px;border:1.5px solid color-mix(in srgb,var(--krem) 45%,transparent);border-radius:50%;position:relative;transition:background .35s var(--ease),border-color .35s var(--ease)}
.zad-znak:after{content:'';position:absolute;left:7px;top:3px;width:6px;height:11px;border:solid var(--czern);border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .35s var(--ease)}
.zad-pole input:checked+.zad-znak{background:var(--zloto);border-color:var(--zloto)}
.zad-pole input:checked+.zad-znak:after{transform:rotate(45deg) scale(1)}
.zad-pole input:focus-visible+.zad-znak{outline:2px solid var(--zloto);outline-offset:3px}
.zad-tekst{display:flex;flex-direction:column;min-width:0}
.zad-t{color:var(--krem);font-size:.98rem;line-height:1.35}
.zad small{font-size:.74rem;color:var(--tekst);margin-top:2px}
.zad.pilne small{color:var(--zloto)}
.zad.zrobione .zad-t{color:var(--tekst);text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--krem) 35%,transparent)}
.zad-skrot{flex:none;background:none;border:0;color:var(--zloto);font:inherit;font-size:.8rem;padding:10px 4px;text-decoration:none;white-space:nowrap}
.zad-x{flex:none;width:40px;height:40px;background:none;border:0;color:var(--tekst);font-size:.95rem;border-radius:50%;transition:color .3s}
.zad-x:hover{color:#e08a75}
.zad-nowe{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 6px}
.zad-nowe input{flex:1 1 260px;padding:11px 12px;background:var(--czern);border:1px solid var(--linia);color:var(--krem);font:inherit}
.zad-nowe select{padding:11px 12px;background:var(--czern);border:1px solid var(--linia);color:var(--krem);font:inherit}
.org-zrobione{display:block;margin:16px 0 8px;background:none;border:0;color:var(--zloto);font:inherit;font-size:.85rem;padding:8px 0}
/* budżet */
.bud-podsum{border:1px solid var(--linia);background:var(--czern);padding:16px;margin-bottom:16px}
.bud-liczby{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}
.bud-liczby span{display:block;font-size:.66rem;letter-spacing:.14em;text-transform:uppercase;color:var(--tekst)}
.bud-liczby b{font-family:var(--serif);font-weight:400;font-size:1.3rem;color:var(--krem)}
.bud-cel{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0 0;font-size:.85rem;letter-spacing:0;text-transform:none;color:var(--krem-c)}
.bud-cel input{width:130px;padding:9px 10px;background:var(--czern-2);border:1px solid var(--linia);color:var(--krem);font:inherit}
.bud-stan{margin:8px 0 0;font-size:.85rem;color:var(--zloto)}
.bud-stan.ponad{color:#ef8a85}
.bud-wkrotce{border-left:2px solid var(--zloto);padding:2px 0 2px 12px;margin:0 0 16px}
.bud-wkrotce p:not(.pl-etykieta){margin:4px 0;font-size:.9rem;color:var(--krem-c)}
.bud-lista{display:flex;flex-direction:column;gap:8px}
.bud-poz{display:grid;grid-template-columns:2fr 1fr 1fr 1.2fr 40px;gap:8px;align-items:end;padding:10px;border:1px solid var(--linia);background:var(--czern)}
.bud-poz.oplacone{border-left:3px solid #5fb56a}
.bud-poz label{margin:0;font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--tekst)}
.bud-poz label span{display:block;margin-bottom:4px}
.bud-poz input{width:100%;padding:9px 10px;background:var(--czern-2);border:1px solid var(--linia);color:var(--krem);font:inherit;font-size:.92rem;letter-spacing:0;text-transform:none;color-scheme:dark}
.bud-poz .bud-n{align-self:stretch;font-family:var(--serif);font-size:1.05rem}
.bud-kategorie{margin-bottom:8px}
/* menu plików */
.pm-stan.bez{color:var(--tekst)}
.pm-menu{position:relative}
.pm-menu summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid var(--linia);color:var(--krem);font-size:.84rem;transition:border-color .3s}
.pm-menu summary::-webkit-details-marker{display:none}
.pm-menu summary:after{content:'';width:7px;height:7px;border:solid currentColor;border-width:0 1.5px 1.5px 0;transform:rotate(45deg) translateY(-2px);transition:transform .4s var(--ease)}
.pm-menu[open] summary:after{transform:rotate(225deg) translateY(-1px)}
.pm-menu summary:hover{border-color:var(--krem)}
.pm-menu-lista{display:flex;flex-wrap:wrap;gap:8px;padding:12px 0 4px}
.pm-menu-lista .pm-uwaga{flex-basis:100%;margin:6px 0 0}
.pm-link-baner{margin-bottom:12px}
/* „Więcej” na telefonie */
.k-wiecej{display:none}
@media (max-width:760px){
  .k-start{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
  .k-kafel{padding:10px 8px;min-height:62px}
  .k-kafel b{font-size:1.3rem}
  .k-kafel span{font-size:.62rem}
  #kreator .k-slub.zwiniety{display:flex;padding:12px 14px}
  .sl-skrot b{font-size:1.15rem}
  .org-przelacz{display:grid;width:100%}
  .org-przelacz button{min-height:46px}
  .zad-skrot{font-size:.74rem;max-width:34%;white-space:normal;text-align:right;line-height:1.3}
  .zad-nowe input,.zad-nowe select{flex-basis:100%;min-height:46px}
  .zad-nowe .btn{width:100%}
  .bud-liczby b{font-size:1.05rem}
  .bud-poz{grid-template-columns:1fr 1fr;padding:12px;position:relative}
  .bud-poz .bud-n{grid-column:1/-1;padding-right:44px}
  .bud-poz label:last-of-type{grid-column:1/-1}
  .bud-poz .zad-x{position:absolute;top:8px;right:6px;width:44px;height:44px}
  .bud-cel input{min-height:44px}
  .pm-pasek{display:flex;flex-direction:column;align-items:stretch;gap:8px}
  .pm-menu summary{display:flex;justify-content:space-between;min-height:46px}
  .pm-menu-lista{display:grid;grid-template-columns:1fr 1fr}
  .pm-menu-lista .btn.zloty{grid-column:1/-1}
  .pm-menu-lista .pm-uwaga{grid-column:1/-1}
  .k-wiecej{display:block;position:fixed;inset:0;z-index:310;pointer-events:none}
  .k-wiecej-tlo{position:absolute;inset:0;background:color-mix(in srgb,var(--czern) 55%,transparent);opacity:0;transition:opacity .45s var(--ease)}
  .k-wiecej-panel{position:absolute;left:8px;right:8px;bottom:calc(76px + env(safe-area-inset-bottom));background:var(--grafit);border:1px solid var(--linia);border-radius:16px;padding:8px;
    transform:translateY(16px);opacity:0;transition:transform .45s var(--ease),opacity .45s var(--ease);box-shadow:0 18px 50px color-mix(in srgb,var(--czern) 60%,transparent)}
  .k-wiecej.otwarty{pointer-events:auto}
  .k-wiecej.otwarty .k-wiecej-tlo{opacity:1}
  .k-wiecej.otwarty .k-wiecej-panel{transform:none;opacity:1}
  .k-wiecej-panel button{display:flex;align-items:center;gap:14px;width:100%;min-height:58px;padding:8px 12px;background:none;border:0;border-radius:10px;color:var(--krem);font:inherit;text-align:left}
  .k-wiecej-panel button+button{border-top:1px solid var(--linia);border-radius:0}
  .k-wiecej-panel svg{width:24px;height:24px;flex:none;fill:none;stroke:var(--zloto);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
  .k-wiecej-panel b{display:block;font-weight:500;font-size:.95rem}
  .k-wiecej-panel small{display:block;font-size:.76rem;color:var(--tekst);margin-top:2px}
  .k-dol button[data-k-wiecej].aktywna{color:var(--krem);background:color-mix(in srgb,var(--krem) 8%,transparent)}
  .k-dol button[data-k-wiecej].aktywna svg{stroke:var(--zloto)}
}
.pm-menu-lista .pm-instaluj{display:none}
@media (pointer:coarse){.pm-menu-lista .pm-instaluj{display:inline-flex}}
@media (max-width:760px){.pl-narzedzia .pole{flex:none!important}}
/* =====================================================================
   PAPETERIA — nowy układ (02.10.2026): podgląd obok wyboru, nie pod nim
   ===================================================================== */
.pap-co{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--linia);margin:6px 0 22px}
.pap-co button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 8px;background:none;border:0;color:var(--tekst);font:inherit;transition:background .4s var(--ease),color .4s var(--ease)}
.pap-co button+button{border-left:1px solid var(--linia)}
.pap-co b{font-weight:500;font-size:.95rem;color:inherit}
.pap-co span{font-size:.72rem}
.pap-co button.akt{background:var(--krem);color:var(--czern)}
.pap-uklad{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:28px;align-items:start}
.pap-lewa{position:sticky;top:96px}
#p-winietki .pap-podglad{max-width:none;margin:0;background:color-mix(in srgb,var(--krem) 4%,transparent);border:1px solid var(--linia);padding:18px;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:none}
#p-winietki .pap-podglad svg{display:block;width:100%;height:auto;box-shadow:0 14px 40px color-mix(in srgb,var(--czern) 55%,transparent)}
#p-winietki .pap-podglad.pap-pion svg{width:auto;max-width:100%;max-height:min(62vh,560px)}
.pap-nawig{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px}
.pap-nawig button{width:44px;height:44px;flex:none;border:1px solid var(--linia);border-radius:50%;background:none;color:var(--krem);font-size:1.3rem;line-height:1;transition:border-color .3s}
.pap-nawig button:hover{border-color:var(--krem)}
.pap-nawig span{flex:1;text-align:center;font-size:.85rem;color:var(--krem-c);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pap-druk-duzy{margin-top:16px}
.pap-druk{width:100%}
.pap-druk[disabled]{opacity:.45;cursor:not-allowed}
.pap-druk-info{margin:8px 0 0}
.pap-druk-maly{display:none}
.pap-ile{color:var(--tekst);letter-spacing:0;margin-left:4px}
.pap-kat{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.pap-kat button{padding:8px 13px;border:1px solid var(--linia);background:none;color:var(--krem-c);font:inherit;font-size:.82rem;transition:border-color .3s,background .3s}
.pap-kat button.akt{border-color:var(--krem);background:color-mix(in srgb,var(--krem) 9%,transparent);color:var(--krem)}
#p-winietki .pap-style{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-height:470px;overflow-y:auto;overflow-x:hidden;padding:2px 6px 2px 2px;margin:0;scroll-snap-type:none;overscroll-behavior:contain}
#p-winietki .pap-style.ksztalt-pion{grid-template-columns:repeat(4,minmax(0,1fr))}
#p-winietki .pap-styl{flex:none;padding:6px}
#p-winietki .pap-styl span{font-size:.62rem;letter-spacing:.06em;margin-top:6px}
.pap-wiecej{flex-basis:100%;width:100%;border-top:1px solid var(--linia);padding-top:6px}
.pap-wiecej summary{cursor:pointer;list-style:none;padding:10px 0;color:var(--zloto);font-size:.88rem}
.pap-wiecej summary::-webkit-details-marker{display:none}
.pap-wiecej summary:after{content:' ▾'}
.pap-wiecej[open] summary:after{content:' ▴'}
.pap-wiecej-pola{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:flex-end}
.pap-wiecej-pola .pole{flex:1 1 200px;margin:0}
#p-winietki .pap-ustawienia{grid-template-columns:none;display:flex;flex-wrap:wrap;gap:12px 14px;align-items:flex-end;margin-top:0}
#p-winietki .pap-ustawienia>.pole{flex:1 1 210px;margin:0}
#p-winietki .pap-przelaczniki{flex-basis:100%}
@media (max-width:900px){
  .pap-uklad{grid-template-columns:1fr;gap:18px}
  .pap-lewa{position:static}
  .pap-druk-duzy{display:none}
  .pap-druk-maly{display:block;margin-top:18px}
  #p-winietki .pap-podglad{padding:12px}
  #p-winietki .pap-podglad.pap-pion svg{max-height:52vh}
  /* wzory: jeden rząd przesuwany palcem, tuż pod podglądem */
  #p-winietki .pap-style{display:flex!important;max-height:none;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;margin:0 -12px;padding:2px 12px 8px;gap:10px}
  #p-winietki .pap-styl{flex:0 0 44%;scroll-snap-align:start}
  #p-winietki .pap-style.ksztalt-pion .pap-styl{flex-basis:31%}
  #p-winietki .pap-style.ksztalt-poziom .pap-styl{flex-basis:46%}
  .pap-kat{flex-wrap:nowrap;overflow-x:auto;margin:0 -12px 12px;padding:0 12px;scrollbar-width:none}
  .pap-kat::-webkit-scrollbar{display:none}
  .pap-kat button{flex:none;min-height:40px}
  .pap-co button{min-height:58px}
}
.pap-lewa,.pap-prawa{min-width:0}
@media (max-width:900px){.pap-uklad{grid-template-columns:minmax(0,1fr)}}
/* papeteria: komplety (zaproszenie, numer stołu i winietka w jednym wzorze) */
#p-winietki .pap-trio{position:relative;width:100%;aspect-ratio:10/7}
#p-winietki .pap-trio .t{position:absolute;display:block;padding:0;margin:0;border:0;background:none;cursor:pointer;box-shadow:0 10px 26px color-mix(in srgb,var(--czern) 55%,transparent);transition:transform .7s var(--ease),outline-color .5s}
#p-winietki .pap-trio .t svg{display:block;width:100%;height:100%;max-height:none;box-shadow:none}
#p-winietki .pap-trio .t-zaproszenia{z-index:1}
#p-winietki .pap-trio .t-stoly{z-index:2}
#p-winietki .pap-trio .t-winietki{z-index:3}
#p-winietki .z-pionowa .t-zaproszenia{left:3%;top:4%;width:45.7%}
#p-winietki .z-pionowa .t-stoly{left:59%;top:3%;width:29%}
#p-winietki .z-pionowa .t-winietki{right:3%;bottom:4%;width:46%}
#p-winietki .z-pozioma .t-zaproszenia{left:4%;top:3%;width:57%}
#p-winietki .z-pozioma .t-stoly{right:4%;top:3%;width:29%}
#p-winietki .z-pozioma .t-winietki{left:28%;bottom:3%;width:44%}
#p-winietki .w-plaska .t-winietki{width:40%}
#p-winietki .z-pozioma.w-plaska .t-winietki{width:38%;left:31%}
#p-winietki .pap-podglad .t{outline:1.5px solid transparent;outline-offset:4px}
#p-winietki .pap-podglad .t.akt{outline-color:var(--zloto)}
#p-winietki .pap-podglad .t:hover{transform:translateY(-4px)}
#p-winietki .pap-podglad .t:focus-visible{outline-color:var(--krem)}
#p-winietki .pap-podglad{padding:22px 18px 14px;gap:6px}
.pap-wskazowka,.pap-przyklad{margin:4px 0 0;text-align:center}
.pap-opis{margin:-4px 0 12px}
#p-winietki .pap-styl .pap-trio .t{box-shadow:0 4px 10px color-mix(in srgb,var(--czern) 50%,transparent);cursor:inherit;transition:none}
#p-winietki .pap-style.pap-komplety{grid-template-columns:repeat(2,minmax(0,1fr));max-height:560px;gap:12px}
#p-winietki .pap-komplety .pap-styl{padding:10px 10px 8px}
#p-winietki .pap-komplety .pap-styl span{font-size:.66rem;margin-top:8px}
.pap-kolory-blok{margin-top:18px}
.pap-krok2{margin-top:30px;padding-top:24px;border-top:1px solid var(--linia)}
.pap-krok2 .pap-co{margin-bottom:16px}
.pap-krok2 .pap-druk{margin-top:16px}
.pap-pusto{margin:14px 0 0}
.pap-srodek{flex-basis:100%;max-width:380px;margin:4px 0 6px;box-shadow:0 8px 22px color-mix(in srgb,var(--czern) 50%,transparent)}
.pap-srodek svg{display:block;width:100%;height:auto}
@media (max-width:900px){
  #p-winietki .pap-podglad{padding:16px 10px 10px}
  #p-winietki .pap-style.pap-komplety{display:flex!important;max-height:none}
  #p-winietki .pap-komplety .pap-styl{flex:0 0 74%}
  .pap-krok2{margin-top:24px;padding-top:20px}
}
@media (max-width:420px){.pap-krok2 .pap-co b{font-size:.86rem;line-height:1.25}}
/* papeteria: wiersz w środku zaproszenia */
.pap-wiersz{flex-basis:100%;width:100%;border-top:1px solid var(--linia);padding-top:14px}
.pap-wiersz .pl-etykieta{margin-top:0}
.pap-wiersz .pap-srodek{max-width:460px;margin:0 auto}
.pap-wiersz .pap-nawig{max-width:460px;margin:10px auto 0}
.pap-wiersz .pole{margin-top:14px}
.pap-wiersze{margin-top:10px}
.pap-wiersze summary{cursor:pointer;list-style:none;padding:10px 0;color:var(--zloto);font-size:.88rem;text-align:center}
.pap-wiersze summary::-webkit-details-marker{display:none}
.pap-wiersze summary:after{content:' ▾'}
.pap-wiersze[open] summary:after{content:' ▴'}
.pap-wiersze-lista{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:4px}
.pap-wiersze-grupa{grid-column:1/-1;margin:12px 0 0;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--tekst)}
.pap-wiersz-opcja{display:flex;flex-direction:column;gap:10px;justify-content:space-between;text-align:left;padding:14px 16px;background:color-mix(in srgb,var(--krem) 3%,transparent);border:1px solid var(--linia);color:var(--krem-c);font:inherit;cursor:pointer;transition:border-color .4s var(--ease),background .4s var(--ease)}
.pap-wiersz-opcja:hover{border-color:color-mix(in srgb,var(--krem) 45%,transparent)}
.pap-wiersz-opcja span{font-family:var(--serif);font-size:1.02rem;line-height:1.45;white-space:pre-line;color:var(--krem)}
.pap-wiersz-opcja b{font-weight:400;font-size:.74rem;letter-spacing:.04em;color:var(--tekst)}
.pap-wiersz-opcja.wybrany{border-color:var(--zloto);background:color-mix(in srgb,var(--zloto) 8%,transparent)}
@media (max-width:640px){.pap-wiersze-lista{grid-template-columns:1fr}}
/* papeteria: tablica z rozsadzeniem */
.pap-krok2 .pap-co{grid-template-columns:repeat(4,minmax(0,1fr))}
.pap-tuklad{flex-basis:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.pap-tuklad button{display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;padding:14px 16px;border:1px solid var(--linia);background:none;color:var(--krem-c);font:inherit;cursor:pointer;transition:border-color .4s var(--ease),background .4s var(--ease)}
.pap-tuklad button b{font-family:var(--serif);font-weight:400;font-size:1.15rem;color:var(--krem)}
.pap-tuklad button span{font-size:.78rem;color:var(--tekst)}
.pap-tuklad button.akt{border-color:var(--zloto);background:color-mix(in srgb,var(--zloto) 8%,transparent)}
#p-winietki .pap-tablica{width:100%;max-width:440px;margin:0 auto;box-shadow:0 12px 30px color-mix(in srgb,var(--czern) 55%,transparent)}
#p-winietki .pap-tablica.pozioma{max-width:none}
#p-winietki .pap-tablica svg{display:block;width:100%;height:auto;max-height:none;box-shadow:none}
@media (max-width:520px){.pap-krok2 .pap-co{grid-template-columns:repeat(2,minmax(0,1fr))}.pap-krok2 .pap-co button:nth-child(3){border-left:0}.pap-krok2 .pap-co button:nth-child(n+3){border-top:1px solid var(--linia)}.pap-tuklad{grid-template-columns:1fr}}
/* plan sali: odległości między stołami (zamiast czerwonych obwódek) */
.pl-odl{cursor:pointer}
.pl-odl .traf{stroke:transparent;stroke-width:36;fill:transparent;pointer-events:all}
.pl-odl .kr{stroke:color-mix(in srgb,var(--krem) 45%,transparent);stroke-width:2.5;stroke-linecap:round;pointer-events:none;transition:stroke .4s}
.pl-odl .uchwyt{fill:var(--czern);stroke:color-mix(in srgb,var(--krem) 70%,transparent);stroke-width:2.5;pointer-events:none;transition:fill .4s}
.pl-odl:hover .kr,.pl-odl.z-liczba .kr{stroke:var(--zloto)}
.pl-odl:hover .uchwyt{fill:var(--zloto)}
.pl-odl.sciana .kr{stroke-dasharray:8 6}
.pl-odl-et{pointer-events:none}
.pl-odl-et rect{fill:var(--czern);stroke:var(--zloto);stroke-width:2}
.pl-odl-et text{fill:var(--krem);text-anchor:middle;font-family:var(--sans);font-weight:500}
.pl-odl-et.sciana rect{stroke:color-mix(in srgb,var(--krem) 50%,transparent)}
.pl-narzedzia .btn.akt,.pe-odl.akt{background:var(--zloto);color:var(--czern);border-color:var(--zloto)}
.pe-odl{flex:none;margin-left:auto;margin-right:10px;padding:8px 12px;border:1px solid var(--linia);background:none;color:var(--krem);font:inherit;font-size:.8rem;border-radius:999px;cursor:pointer;transition:background .4s,color .4s}
.pl-odl-pop{position:fixed;z-index:10050;width:min(320px,calc(100vw - 20px));background:var(--czern-2);border:1px solid var(--zloto);padding:16px 16px 14px;box-shadow:0 18px 50px rgba(0,0,0,.45);color:var(--krem-c);font-size:.9rem}
.pl-odl-x{position:absolute;top:6px;right:6px;width:36px;height:36px;border:0;background:none;color:var(--krem);font-size:1rem;cursor:pointer}
.pl-odl-tyt{margin:0 30px 6px 0;color:var(--krem);font-family:var(--serif);font-size:1.15rem;line-height:1.25}
.pl-odl-tyt span{color:var(--zloto)}
.pl-odl-teraz{margin:0 0 10px}.pl-odl-teraz b{color:var(--krem);font-weight:500}.pl-odl-teraz span{color:var(--tekst)}
.pl-odl-info{margin:0 0 10px;color:var(--zloto);font-size:.85rem}
.pl-odl-pole{display:flex;align-items:center;gap:8px;margin:0 0 12px}
.pl-odl-pole input{width:96px;height:46px;padding:0 10px;font:inherit;font-size:1.05rem;background:var(--czern);border:1px solid var(--linia);color:var(--krem)}
.pl-odl-przyc{display:flex;flex-direction:column;gap:8px}
.pl-odl-przyc .btn{width:100%;justify-content:center;white-space:normal;text-align:center}
@media print{.pl-odl:not(.z-liczba){display:none}.pl-odl .kr{stroke:#000}.pl-odl .uchwyt,.pl-odl .traf{display:none}.pl-odl-et rect{fill:#fff;stroke:#000}.pl-odl-et text{fill:#000}.pl-odl-pop,.pe-odl{display:none}}
/* testy przed wysłaniem klientce (05.10.2026): ostrzeżenia, kopia, przepełnione stoły, druk w aplikacji */
.pm-ostrzezenie{margin:0 0 12px;padding:12px 14px;border:1px solid #d9534f;background:color-mix(in srgb,#d9534f 12%,transparent);color:var(--krem);font-size:.9rem;line-height:1.5}
.pm-ostrzezenie b{color:var(--krem)}
.pm-ostrzezenie .btn{margin-left:8px}
.pm-kopia{margin:0 0 12px;padding:10px 14px;border:1px solid var(--linia);color:var(--krem-c);font-size:.88rem;line-height:1.5}
.pm-kopia .btn{margin-left:6px}
.p-miejsca.za-duzo{color:#e57373}
.pl-stol.przepelniony text.mala{fill:#e57373}
.druk-ios{flex-basis:100%;margin:6px 0 0;font-size:.8rem;color:var(--krem-c);line-height:1.4}
#druk-warstwa,#druk-warstwa svg{-webkit-print-color-adjust:exact;print-color-adjust:exact}
@media print{html.drukuje,html.drukuje body{overflow:visible!important;height:auto!important;min-height:0!important;display:block!important}}
.druk-pasek{flex-wrap:wrap}
/* goście: własne grupy (05.10.2026) */
.g-grupy{margin-top:16px;border:1px solid var(--linia)}
.g-grupy summary{cursor:pointer;list-style:none;padding:12px 14px;color:var(--krem);font-size:.9rem;display:flex;gap:10px;align-items:baseline}
.g-grupy summary::-webkit-details-marker{display:none}
.g-grupy summary:after{content:'▾';margin-left:auto;color:var(--zloto)}
.g-grupy[open] summary:after{content:'▴'}
.g-grupy summary span{color:var(--tekst);font-size:.8rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}
.g-grupy-lista{padding:0 14px 14px;display:flex;flex-direction:column;gap:8px}
.g-grupa-wiersz{display:flex;gap:10px;align-items:center}
.g-grupa-wiersz input{flex:1;min-width:0;padding:10px 12px;background:var(--czern);border:1px solid var(--linia);color:var(--krem);font:inherit}
.g-grupa-wiersz span{flex:none;width:58px;text-align:right;font-size:.8rem;color:var(--tekst)}
.g-grupa-wiersz i{flex:none;width:36px}
.g-grupa-nowa{display:flex;gap:10px;margin-top:6px}
.g-grupa-nowa input{flex:1;min-width:0;padding:10px 12px;background:var(--czern);border:1px solid var(--linia);color:var(--krem);font:inherit}
.g-grupy-lista .s-drobne{margin:2px 0 0}
#g-filtr-grupa{flex:0 1 220px;padding:11px 10px;background:var(--czern);border:1px solid var(--linia);color:var(--krem);font:inherit}
@media (max-width:760px){#g-filtr-grupa{flex-basis:100%;min-height:46px}.g-grupa-nowa{flex-direction:column}.g-grupa-wiersz input,.g-grupa-nowa input{min-height:46px}}
/* zaproszenie kilkustronicowe (05.10.2026): pasek stron w podglądzie, wybór formatu i stron */
.pap-strony{margin-top:18px;padding-top:14px;border-top:1px solid var(--linia)}
.pap-strony-rzad{display:flex;gap:12px;overflow-x:auto;padding:4px 2px 10px;scrollbar-width:thin}
.pap-strony-rzad figure{flex:0 0 118px;margin:0}
.pap-strona{aspect-ratio:105/148;box-shadow:0 6px 16px color-mix(in srgb,var(--czern) 50%,transparent)}
.pap-strona svg{display:block;width:100%;height:100%}
.pap-strony-rzad figcaption{margin-top:7px;font-size:.68rem;line-height:1.35;color:var(--tekst);text-align:center}
.pl-etykieta.pap-pod{flex-basis:100%;margin:18px 0 8px}
.pap-zformat{grid-template-columns:repeat(3,minmax(0,1fr))}
.pap-strony-wybor{flex-basis:100%;display:flex;flex-wrap:wrap;gap:6px}
.pap-strony-wybor button{padding:9px 13px;border:1px solid var(--linia);background:none;color:var(--krem-c);font:inherit;font-size:.82rem;cursor:pointer;transition:border-color .4s var(--ease),background .4s var(--ease)}
.pap-strony-wybor button.akt{border-color:var(--zloto);background:color-mix(in srgb,var(--zloto) 8%,transparent);color:var(--krem)}
.pap-strony-wybor button:disabled{cursor:default;opacity:.75}
.link-btn{padding:0;border:0;background:none;color:var(--zloto);font:inherit;text-decoration:underline;cursor:pointer}
@media (max-width:520px){.pap-zformat{grid-template-columns:1fr}.pap-strony-rzad figure{flex-basis:96px}}
.pap-ustawienia .pap-tuklad,.pap-ustawienia .pl-etykieta,.pap-ustawienia .pap-strony-wybor,.pap-ustawienia .pap-wiersz{grid-column:1/-1}
.pap-ustawienia textarea{width:100%;resize:vertical;line-height:1.45}
#p-winietki .pap-podglad .pap-strony{align-self:stretch;width:100%;min-width:0}
#p-winietki .pap-strony-rzad{max-width:100%}
#p-winietki .pap-wiersz .pap-srodek{max-width:250px}
/* plan sali: trzy przyciski obok „Komfortu chodzenia” tej samej wielkości co pole wyboru (05.10.2026);
   siatka trzyma równe szerokości także wtedy, gdy przyciski schodzą do drugiego rzędu */
.pl-narzedzia{display:grid;grid-template-columns:minmax(220px,300px) repeat(3,minmax(0,1fr));gap:10px;align-items:end}
#p-sala .pl-narzedzia .btn,.pl-narzedzia .btn.zloty,.pl-narzedzia .btn.pusty{width:100%;min-width:0;height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;font-size:.82rem;font-weight:500;line-height:1.15;white-space:normal;text-align:center;border-width:1px}
@media (max-width:1100px){.pl-narzedzia{grid-template-columns:repeat(3,minmax(0,1fr))}.pl-narzedzia .pole{grid-column:1/-1}}
@media (max-width:760px){.pl-narzedzia{grid-template-columns:1fr}}
/* pełny ekran na komputerze: całe menu po lewej (05.10.2026) */
.pe-menu{display:none}
.pe-historia{display:flex;gap:6px;flex:none}
.pe-historia button{width:38px;height:38px;border:1px solid var(--linia);background:none;color:var(--krem);font-size:1.05rem;border-radius:50%;line-height:1;transition:border-color .3s,opacity .3s}
.pe-historia button:hover:not(:disabled){border-color:var(--krem)}
.pe-historia button:disabled{opacity:.35;cursor:default}
.pe-historia + .pe-odl{margin-left:0}
@media (max-width:520px){.pe-zapis{display:none}.pe-historia button{width:34px;height:34px}}
@media (min-width:900px){
  .pe{display:grid;grid-template-columns:300px minmax(0,1fr);grid-template-rows:auto minmax(0,1fr)}
  .pe-gora{grid-column:1/-1}
  .pe-menu{display:block;grid-column:1;grid-row:2;overflow-y:auto;overscroll-behavior:contain;background:var(--grafit);border-right:1px solid var(--linia);padding:6px 16px 26px;scrollbar-width:thin}
  .pe-plotno{grid-column:2;grid-row:2}
  .pe-dol{display:none}
  .pe-menu section{padding:14px 0 16px;border-bottom:1px solid var(--linia)}
  .pe-menu section:last-child{border-bottom:0}
  .pe-menu h3{margin:8px 0 10px;font-family:var(--sans);font-size:.7rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--krem-c);display:flex;justify-content:space-between;align-items:baseline}
  .pe-menu h3 span{letter-spacing:0;text-transform:none;color:var(--tekst);font-size:.74rem}
  .pe-m-pod{margin:8px 0 0;font-size:.74rem;line-height:1.45;color:var(--tekst)}
  .pe-m-siatka{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-bottom:6px}
  .pe-m-siatka button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;height:66px;border:1px solid var(--linia);background:color-mix(in srgb,var(--krem) 5%,transparent);color:var(--krem);font:inherit;cursor:grab;transition:border-color .3s,background .3s}
  .pe-m-siatka button:hover{border-color:var(--zloto);background:color-mix(in srgb,var(--zloto) 9%,transparent)}
  .pe-m-siatka b{font-weight:500;font-size:.95rem;line-height:1}
  .pe-m-siatka small{font-size:.62rem;color:var(--tekst);line-height:1}
  .pe-ik{display:block;flex:none;border:1.5px solid currentColor;opacity:.85}
  .pe-ik.okr{width:18px;height:18px;border-radius:50%}
  .pe-ik.pro{width:24px;height:12px;border-radius:2px}
  .pe-m-lista{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .pe-m-lista button{display:flex;align-items:center;gap:9px;min-height:44px;padding:8px 10px;border:1px solid var(--linia);background:color-mix(in srgb,var(--krem) 5%,transparent);color:var(--krem);font:inherit;font-size:.8rem;text-align:left;line-height:1.2;cursor:grab;transition:border-color .3s,background .3s}
  .pe-m-lista button:hover{border-color:var(--zloto);background:color-mix(in srgb,var(--zloto) 9%,transparent)}
  .pe-m-lista .pe-ik{width:14px;height:10px;border-radius:2px;border-style:dashed}
  .pe-m-goscie{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px;max-height:260px;overflow-y:auto}
  .pe-m-goscie .p-chip{cursor:grab}
  .pe-m-pola{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .pe-m-pola label,.pe-m-etyk{display:flex;flex-direction:column;gap:5px;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--tekst)}
  .pe-m-etyk{margin-top:12px}
  .pe-m-pola input,.pe-m-etyk select{height:42px;padding:0 10px;border:1px solid var(--linia);background:var(--czern);color:var(--krem);font:inherit;font-size:.9rem;letter-spacing:0;text-transform:none}
  .pe-m-szeroki{grid-column:1/-1}
  .pe-menu > section > .pe-m-szeroki{width:100%;margin-top:10px;min-height:44px;border:1px dashed var(--linia);background:none;color:var(--krem);font:inherit;font-size:.82rem;transition:border-color .3s}
  .pe-menu > section > .pe-m-szeroki:hover{border-color:var(--krem)}
  .pe-m-narz{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  .pe-m-narz button{height:44px;border:1px solid var(--linia);background:none;color:var(--krem);font:inherit;font-size:.8rem;transition:border-color .3s,background .3s,color .3s,opacity .3s}
  .pe-m-narz button:hover:not(:disabled){border-color:var(--krem)}
  .pe-m-narz button.akt{background:var(--zloto);border-color:var(--zloto);color:var(--czern)}
  .pe-m-narz button:disabled{opacity:.35;cursor:default}
  .pe-m-skroty dl{display:grid;grid-template-columns:auto 1fr;gap:6px 12px;margin:0;font-size:.74rem;color:var(--tekst)}
  .pe-m-skroty dt{color:var(--krem);font-family:ui-monospace,Menlo,monospace;font-size:.7rem;white-space:nowrap}
  .pe-m-skroty dd{margin:0}
  .pe-arkusz{top:59px}
}
.pe-duch{position:fixed;left:0;top:0;z-index:600;pointer-events:none;padding:8px 12px;background:var(--zloto);color:var(--czern);font-size:.8rem;font-weight:500;box-shadow:0 8px 20px rgba(0,0,0,.4);white-space:nowrap;transition:opacity .2s}
.pe-duch.poza{opacity:.55}
html.pe-ciagnie,html.pe-ciagnie *{cursor:grabbing!important;user-select:none;-webkit-user-select:none}
.pe .pl-stol.cel>circle:first-child,.pe .pl-stol.cel>rect{stroke:var(--zloto)!important;stroke-width:6!important}
/* imiona na zaproszeniach: odmiana do sprawdzenia */
.pap-odmiana{grid-column:1/-1;border:1px solid var(--linia);padding:12px 14px}
.pap-odmiana summary{cursor:pointer;font-size:.86rem;color:var(--krem)}
.pap-odm-wiersz{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);gap:10px;align-items:center;padding:6px 0;border-top:1px solid color-mix(in srgb,var(--linia) 60%,transparent)}
.pap-odm-wiersz span{font-size:.82rem;color:var(--tekst);overflow:hidden;text-overflow:ellipsis}
.pap-odm-wiersz input{height:40px;padding:0 10px;border:1px solid var(--linia);background:var(--czern);color:var(--krem);font:inherit;font-size:.9rem;width:100%}
.pap-odm-wiersz input::placeholder{color:var(--krem-c);opacity:.85}
@media (max-width:520px){.pap-odm-wiersz{grid-template-columns:1fr;gap:4px}}
.pap-litery{grid-column:1/-1;margin:0}.pap-litery b{font-weight:600}
/* goście: edycja imienia, rodziny (jedno zaproszenie) i dzieci (05.10.2026) */
.p-tabela .g-imie-pole{width:100%;min-width:180px;height:38px;padding:0 8px;margin:0 0 0 -8px;border:1px solid transparent;background:none;color:var(--krem);font:inherit;font-size:.95rem;transition:border-color .3s,background .3s}
.p-tabela .g-imie-pole:hover{border-color:var(--linia)}
.p-tabela .g-imie-pole:focus{border-color:var(--zloto);background:var(--czern);outline:none}
.g-akcje{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}
.g-akcje button{padding:4px 9px;border:1px solid var(--linia);background:none;color:var(--tekst);font:inherit;font-size:.7rem;line-height:1.3;cursor:pointer;transition:border-color .3s,color .3s,background .3s}
.g-akcje button:hover{border-color:var(--krem);color:var(--krem)}
.g-akcje .g-dz.akt{border-color:var(--zloto);color:var(--czern);background:var(--zloto)}
.g-rodzina{display:block;margin-bottom:4px;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--zloto)}
.p-tabela tr.w-rodzinie td:first-child{border-left:2px solid color-mix(in srgb,var(--zloto) 70%,transparent);padding-left:12px}
.p-tabela tr.w-rodzinie:not(.r-ostatni) td{border-bottom-color:transparent}
.p-tabela tr.w-rodzinie:not(.r-pierwszy) td{padding-top:4px}
@media (max-width:760px){.p-tabela .g-imie-pole{margin:0;min-width:0;font-size:1rem}}
.pap-litery.za-male{border-left-color:#ef8a85;color:var(--krem)}
/* okno „Zanim zaczniecie”: zgoda na zapis przed pustym planem */
html.pm-okno-otwarte{overflow:hidden}
.pm-okno{position:fixed;inset:0;z-index:700;display:flex;align-items:center;justify-content:center;padding:16px;background:color-mix(in srgb,var(--czern) 72%,transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.pm-okno-karta{position:relative;width:min(560px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:30px 28px 24px;background:var(--grafit);border:1px solid var(--linia);color:var(--krem);box-shadow:0 24px 60px rgba(0,0,0,.45)}
.pm-okno-nad{margin:0 0 8px;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--zloto)}
.pm-okno-karta h3{margin:0 0 14px;font-family:var(--serif);font-weight:400;font-size:1.5rem;line-height:1.2}
.pm-okno-karta p{margin:0 0 12px;font-size:.92rem;line-height:1.55;color:var(--krem-c)}
.pm-okno-drobne{font-size:.76rem!important;color:var(--tekst)!important}
.pm-okno-drobne a{color:var(--krem)}
.pm-okno-przyciski{display:flex;flex-wrap:wrap;align-items:center;gap:14px 20px;margin-top:18px}
.pm-okno-przyciski .btn{min-height:48px}
.pm-okno-x{position:absolute;top:10px;right:10px;width:38px;height:38px;border:1px solid var(--linia);border-radius:50%;background:none;color:var(--krem);cursor:pointer}
@media (max-width:520px){.pm-okno-karta{padding:26px 18px 20px}.pm-okno-przyciski .btn{width:100%}}
/* długa lista gości: „dziecko” i „+ Dziecko” na komputerze dopiero po najechaniu na wiersz (zaznaczone dziecko widać zawsze) */
@media (hover:hover) and (min-width:761px){
  .p-tabela .g-akcje .g-dz:not(.akt),.p-tabela .g-akcje .g-ak{opacity:0;transition:opacity .3s}
  .p-tabela tr:hover .g-akcje .g-dz,.p-tabela tr:hover .g-akcje .g-ak,.p-tabela tr:focus-within .g-akcje .g-dz,.p-tabela tr:focus-within .g-akcje .g-ak{opacity:1}
  .p-tabela tr.p-gosc .g-akcje [data-rozdziel]{opacity:1}
}
#p-winietki .pap-styl .pap-trio,#p-winietki .pap-styl svg{text-transform:none;letter-spacing:normal}
