/* Bundle wydajnościowy: kolejność identyczna jak w style.css. */

/* ===== 00-foundation.css ===== */
:root{--green-950:#24151f;--green-900:#381c2c;--green-800:#51243b;--green-700:#6d2b4c;--green-600:#8a4264;--green-100:#eadce3;--green-50:#faf4f7;--cream:#f8f4ef;--peach:#d8c2b3;--peach-light:#f0e5dd;--ink:#20242b;--text:#44434a;--muted:#76727a;--line:#e6dfe3;--white:#ffffff;--danger:#a53d32;--success:#3f725a;--shadow-sm:0 10px 30px rgba(81, 36, 59, .09);--shadow-md:0 24px 70px rgba(81, 36, 59, .15);--radius-sm:14px;--radius-md:24px;--radius-lg:36px;--container:1200px;--header-height:83px;}
*,
*::before,
*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:var(--header-height);}
body{margin:0;background:var(--white);color:var(--text);font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;}
body.menu-open{overflow:hidden;}
img{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
button,
input,
select,
textarea{font:inherit;}
button,
a{-webkit-tap-highlight-color:transparent;}
:focus-visible{outline:3px solid rgba(138, 66, 100, .35);outline-offset:3px;}
.container{width:min(calc(100% - 40px), var(--container));margin-inline:auto;}
.section{min-height:calc(100svh - var(--header-height));padding:clamp(44px, 5.4vh, 62px) 0;display:flex;align-items:center;}
.section > .container{width:min(calc(100% - 40px), var(--container));}
.skip-link{position:fixed;z-index:9999;top:12px;left:12px;padding:10px 16px;border-radius:8px;background:var(--green-900);color:var(--white);transform:translateY(-150%);transition:transform .2s ease;}
.skip-link:focus{transform:translateY(0);}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;}
.site-header{position:sticky;z-index:100;top:0;background:rgba(255, 255, 255, .94);border-bottom:1px solid transparent;backdrop-filter:blur(18px);transition:box-shadow .25s ease, border-color .25s ease;}
.site-header.is-scrolled{border-color:rgba(230, 223, 227, .9);box-shadow:0 12px 35px rgba(81, 36, 59, .07);}
.nav-wrap{min-height:82px;display:flex;align-items:center;gap:34px;}
.brand{display:inline-flex;flex-direction:column;flex:0 0 auto;color:var(--ink);line-height:1;}
.brand__name{font-family:Georgia, "Times New Roman", serif;font-size:26px;letter-spacing:-.8px;}
.brand__dot{color:var(--green-600);}
.brand__role{margin-top:6px;color:var(--green-700);font-size:9px;font-weight:800;letter-spacing:.24em;text-transform:uppercase;}
.primary-nav{display:flex;align-items:center;justify-content:center;gap:22px;margin-left:auto;}
.primary-nav a{position:relative;color:#37333a;font-size:14px;font-weight:650;transition:color .2s ease;}
.primary-nav a::after{content:"";position:absolute;right:0;bottom:-9px;left:0;height:2px;border-radius:99px;background:var(--green-600);transform:scaleX(0);transition:transform .2s ease;}
.primary-nav a:hover,
.primary-nav a.is-active{color:var(--green-700);}
.primary-nav a:hover::after,
.primary-nav a.is-active::after{transform:scaleX(1);}
.nav-account{display:flex;align-items:center;gap:8px;flex:0 0 auto;}
.nav-account a{min-height:42px;padding:10px 15px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;font-size:12px;font-weight:800;transition:background .2s ease, color .2s ease, transform .2s ease;}
.nav-account__login{border:1px solid var(--line);background:var(--white);color:var(--green-800);}
.nav-account__login:hover,
.nav-account__login.is-active{border-color:var(--green-600);background:var(--green-50);}
.nav-account__register{border:1px solid var(--green-700);background:var(--green-700);color:var(--white);}
.nav-account__register:hover,
.nav-account__register.is-active{background:var(--green-900);transform:translateY(-2px);}
.panel-notifications{position:relative;flex:0 0 auto;}
.panel-notifications__button{position:relative;width:44px;height:44px;padding:0;border:1px solid var(--line);border-radius:50%;display:inline-grid;place-items:center;background:var(--white);color:var(--green-800);cursor:pointer;transition:border-color .2s ease, background .2s ease, color .2s ease, transform .2s ease;}
.panel-notifications__button:hover,
.panel-notifications__button[aria-expanded="true"]{border-color:var(--green-600);background:var(--green-50);color:var(--green-900);transform:translateY(-1px);}
.panel-notifications__button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;}
.panel-notifications__badge{position:absolute;top:-3px;right:-3px;min-width:18px;height:18px;padding:0 5px;border:2px solid var(--white);border-radius:999px;place-items:center;background:var(--green-700);color:var(--white);font-size:9px;font-weight:900;line-height:1;}
.panel-notifications__badge:not([hidden]){display:grid;}
.panel-notifications__menu{position:absolute;z-index:130;top:calc(100% + 12px);right:0;width:360px;max-width:calc(100vw - 28px);overflow:hidden;border:1px solid var(--line);border-radius:20px;background:var(--white);box-shadow:0 22px 55px rgba(81, 36, 59, .16);}
.panel-notifications__head{padding:17px 19px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:14px;background:var(--green-50);}
.panel-notifications__head strong{color:var(--ink);font-size:15px;}
.panel-notifications__head span{color:var(--green-800);font-size:11px;font-weight:800;}
.panel-notifications__empty{min-height:190px;padding:30px 24px;display:grid;place-content:center;justify-items:center;text-align:center;}
.panel-notifications__empty > span{width:38px;height:38px;margin-bottom:13px;border-radius:50%;display:grid;place-items:center;background:var(--green-50);color:var(--green-800);font-size:17px;font-weight:900;}
.panel-notifications__empty strong{color:var(--ink);font-size:15px;}
.panel-notifications__empty p{max-width:270px;margin:7px 0 0;color:var(--muted);font-size:12px;line-height:1.55;}
.panel-notifications__list{max-height:390px;overflow-y:auto;}
.panel-notifications__item{padding:15px 17px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(38px, 38px) minmax(0, 1fr);align-items:start;gap:12px;background:var(--white);transition:background .18s ease;}
.panel-notifications__item:hover{background:var(--green-50);}
.panel-notifications__icon{width:38px;min-width:38px;max-width:38px;height:38px;min-height:38px;max-height:38px;aspect-ratio:1;box-sizing:border-box;align-self:start;flex:0 0 38px;border-radius:50%;display:grid;place-items:center;background:rgba(123, 45, 92, .1);color:var(--green-800);font-size:15px;font-weight:900;line-height:1;}
.panel-notifications__body{min-width:0;display:grid;gap:4px;}
.panel-notifications__body strong{color:var(--ink);font-size:13px;line-height:1.35;}
.panel-notifications__body small{overflow:hidden;color:var(--muted);font-size:11px;line-height:1.45;text-overflow:ellipsis;white-space:nowrap;}
.panel-notifications__body time{color:var(--green-800);font-size:10px;font-weight:750;}
.panel-notifications__footer{padding:13px 18px;display:block;background:var(--green-50);color:var(--green-800);font-size:12px;font-weight:850;text-align:center;}
.panel-notifications__footer:hover{background:rgba(123, 45, 92, .12);}
.primary-nav__account-mobile{display:none;}
.menu-toggle{display:none;width:44px;height:44px;padding:10px;border:0;border-radius:50%;background:var(--green-50);cursor:pointer;}
.menu-toggle > span:not(.sr-only){display:block;width:22px;height:2px;margin:5px auto;border-radius:2px;background:var(--green-900);transition:transform .2s ease, opacity .2s ease;}
.menu-toggle[aria-expanded="true"] > span:nth-child(1){transform:translateY(7px) rotate(45deg);}
.menu-toggle[aria-expanded="true"] > span:nth-child(2){opacity:0;}
.menu-toggle[aria-expanded="true"] > span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
.eyebrow{display:flex;align-items:center;gap:11px;margin:0 0 18px;color:var(--green-700);font-size:12px;font-weight:850;letter-spacing:.14em;text-transform:uppercase;}
.eyebrow > span{display:inline-block;width:28px;height:2px;border-radius:999px;background:currentColor;}
.eyebrow--light{color:#dfb8ca;}
h1,
h2,
h3,
p{margin-top:0;}
h1,
h2{color:var(--ink);font-family:Georgia, "Times New Roman", serif;font-weight:500;letter-spacing:-.045em;line-height:1.06;}
h1 em,
h2 em{color:var(--green-700);font-style:italic;font-weight:500;}
h2{margin-bottom:22px;font-size:clamp(42px, 5vw, 62px);}
.button{min-height:52px;padding:14px 23px;display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;border-radius:999px;cursor:pointer;font-size:14px;font-weight:800;line-height:1.2;transition:transform .2s ease, background .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease;}
.button:hover{transform:translateY(-2px);}
.button--primary{background:var(--green-700);color:var(--white);box-shadow:0 10px 25px rgba(109, 43, 76, .2);}
.button--primary:hover{background:var(--green-900);box-shadow:0 14px 30px rgba(109, 43, 76, .27);}
.button--secondary{border-color:var(--green-600);background:var(--white);color:var(--green-700);}
.button--secondary:hover{background:var(--green-50);}
.button--light{background:var(--white);color:var(--green-800);}
.button--full{width:100%;}
.hero{position:relative;min-height:calc(100svh - var(--header-height));padding-top:68px;padding-bottom:80px;overflow:hidden;}
.hero-grid{display:grid;grid-template-columns:minmax(0, 1.03fr) minmax(0, .97fr);align-items:start;gap:60px;}
.hero-copy{position:relative;z-index:2;}
.hero h1{max-width:720px;margin:0 0 25px;font-size:clamp(46px, 4.1vw, 62px);line-height:1.01;letter-spacing:-.035em;}
.hero-lead{max-width:620px;margin-bottom:26px;color:#625d63;font-size:18px;line-height:1.7;}
.check-list{margin:0 0 32px;padding:0;display:grid;gap:12px;list-style:none;}
.check-list li{display:flex;align-items:flex-start;gap:12px;color:#3f3940;font-size:15px;font-weight:600;}
.check-list li span{width:22px;height:22px;display:inline-grid;place-items:center;flex:0 0 22px;margin-top:1px;border-radius:50%;background:var(--green-100);color:var(--green-800);font-size:13px;font-weight:900;}
.hero-actions{display:flex;flex-wrap:wrap;gap:13px;}
.hero-visual{position:relative;display:grid;align-content:start;gap:20px;margin-top:-10px;}
.hero-photo{position:relative;min-height:620px;height:620px;overflow:hidden;border-radius:28px;box-shadow:var(--shadow-md);}
.hero-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:54% center;transform:scale(1.08);transform-origin:center center;}
.hero-photo__shade{display:none;}
.hero-motto{position:absolute;z-index:2;right:35px;bottom:29px;left:55px;max-width:440px;margin:0;color:var(--white);font-family:Georgia, "Times New Roman", serif;font-size:25px;font-style:italic;line-height:1.35;text-shadow:0 2px 15px rgba(0, 0, 0, .35);}
.hero-motto cite{margin-top:9px;display:block;color:rgba(255, 255, 255, .78);font-family:Inter, sans-serif;font-size:9px;font-style:normal;font-weight:800;letter-spacing:.12em;text-transform:uppercase;}
.section-anchor{display:none;}
.section-heading{margin-bottom:54px;}
.section-heading--split{display:grid;grid-template-columns:minmax(0, 1.35fr) minmax(280px, .65fr);align-items:end;gap:80px;}
.section-heading--split h2{max-width:760px;margin-bottom:0;}
.section-heading--split > p{margin-bottom:8px;color:var(--muted);}
.section-heading--center{max-width:790px;margin-right:auto;margin-bottom:60px;margin-left:auto;text-align:center;}
.section-heading--center .eyebrow{justify-content:center;}
.section-heading--center > p:last-child{max-width:650px;margin-inline:auto;color:var(--muted);}
.transformations{position:relative;overflow:hidden;background:var(--white);}
.transformations::before{content:"";position:absolute;top:42px;left:23%;width:135px;height:135px;border-radius:50%;background:#dcebe5;opacity:.72;}
.transformations::after{content:"";position:absolute;top:142px;left:43%;width:72px;height:72px;border-radius:50%;background:#f2d8df;opacity:.8;}
.transformations > .container{position:relative;z-index:1;}
.transformations__heading{align-items:center;}
.transformations__heading .eyebrow{margin-bottom:13px;}
.transformations__heading h2{max-width:780px;font-size:clamp(36px, 3.2vw, 50px);line-height:1.08;}
.transformations__heading > p{max-width:350px;justify-self:end;font-size:14px;line-height:1.75;}
.transform-slider{position:relative;padding-inline:18px;}
.transform-set{display:none;grid-template-columns:repeat(2, minmax(0, 1fr));align-items:stretch;gap:42px;animation:slideIn .5s ease both;}
.transform-set.is-active{display:grid;}
.transform-set--single{grid-template-columns:minmax(0, 540px);justify-content:center;}
@keyframes slideIn{
from{opacity:0;transform:translateX(20px);}
to{opacity:1;transform:translateX(0);}}
.transform-card{min-width:0;}
.transformation-compare{min-height:300px;display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.transformation-compare > figure{position:relative;min-width:0;min-height:300px;margin:0;overflow:hidden;}
.transformation-compare > figure:first-child{border-radius:16px;background:#e3dce3;}
.transformation-compare > figure:last-child{border-radius:16px;background:#dbe7e3;}
.transformation-compare img{width:100%;height:100%;min-height:300px;object-fit:cover;}
.transformation-image-placeholder{position:absolute;inset:0;display:block;}
.transformation-image-placeholder::before{content:"";position:absolute;top:27%;left:50%;width:72px;height:72px;border:1px solid rgba(81, 36, 59, .2);border-radius:50%;transform:translateX(-50%);}
.transformation-image-placeholder::after{content:"";position:absolute;top:calc(27% + 68px);left:50%;width:110px;height:102px;border:1px solid rgba(81, 36, 59, .2);border-radius:55px 55px 13px 13px;transform:translateX(-50%);}
.transformation-compare figcaption{position:absolute;z-index:1;padding:6px 10px;border-radius:99px;font-size:9px;font-weight:900;letter-spacing:.1em;line-height:1;text-transform:uppercase;}
.transformation-compare figcaption{right:10px;bottom:10px;left:auto;background:rgba(255, 255, 255, .88);color:var(--green-900);}
.transform-content{padding:17px 0 0;}
.transformation-summary{display:grid;grid-template-columns:minmax(0, 1fr) auto;align-items:center;gap:16px;}
.transformation-person h3{margin:0 0 2px;color:var(--green-950);font-family:Georgia, "Times New Roman", serif;font-size:27px;font-weight:600;line-height:1.15;}
.transformation-person p{margin:0;color:var(--muted);font-size:12px;}
.transformation-result{width:72px;height:72px;display:grid;place-items:center;flex:0 0 72px;border-radius:50%;background:#efc2cf;color:var(--green-950);text-align:center;}
.transformation-result strong{display:block;font-family:Georgia, "Times New Roman", serif;font-family:Inter, ui-sans-serif, system-ui, sans-serif;font-size:16px;font-weight:600;line-height:1.15;white-space:nowrap;}
.transformation-description{max-width:490px;min-height:47px;margin:13px 0 0;color:var(--text);font-size:14px;line-height:1.65;}
.transformation-description.is-empty::after{content:"";width:76%;height:1px;display:block;margin-top:12px;background:var(--line);box-shadow:0 9px 0 var(--line);}
.tag{display:inline-flex;padding:6px 10px;border-radius:99px;background:var(--green-50);color:var(--green-700);font-size:10px;font-weight:850;letter-spacing:.06em;text-transform:uppercase;}
.slider-controls{min-height:34px;margin-top:20px;display:flex;align-items:center;justify-content:center;pointer-events:none;}
.slider-controls.is-single{display:none;}
.slider-controls > button{position:absolute;z-index:3;top:128px;width:54px;height:54px;border:0;border-radius:50%;background:var(--green-950);color:var(--white);cursor:pointer;font-size:22px;font-weight:500;pointer-events:auto;transition:background .2s ease, color .2s ease, transform .2s ease;}
.slider-controls > button[data-slider-prev]{left:-9px;}
.slider-controls > button[data-slider-next]{right:-9px;}
.slider-controls > button:hover{background:var(--green-700);color:var(--white);transform:translateY(-2px);}
.slider-dots{display:flex;align-items:center;gap:7px;pointer-events:auto;}
.slider-dot{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:#c8bdc3;cursor:pointer;}
.slider-dot.is-active{width:26px;border-radius:99px;background:var(--green-700);}
.transformations__disclaimer{margin:4px 0 0;color:var(--muted);font-size:10px;text-align:center;}
.offer{background:var(--white);}
.offer-configurator{max-width:760px;margin:-15px auto 52px;display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:35px;}
.offer-choice{min-width:0;margin:0;padding:0;border:0;text-align:center;}
.offer-choice legend{width:100%;margin-bottom:11px;color:var(--ink);font-size:12px;font-weight:750;}
.offer-segmented{padding:4px;display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:4px;border:1px solid var(--line);border-radius:999px;background:var(--white);}
.offer-segmented--duration{grid-template-columns:repeat(4, minmax(0, 1fr));}
.offer-segmented button{min-height:39px;padding:8px 13px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--text);cursor:pointer;font-size:12px;font-weight:700;white-space:nowrap;transition:background .2s ease, border-color .2s ease, color .2s ease, box-shadow .2s ease;}
.offer-segmented button:hover{color:var(--green-700);}
.offer-segmented button.is-active{border-color:var(--green-600);background:var(--green-50);color:var(--green-800);box-shadow:0 5px 14px rgba(81, 36, 59, .12);}
.pricing-grid{display:grid;grid-template-columns:repeat(3, 1fr);align-items:stretch;gap:22px;}
.price-card{position:relative;padding:36px 31px 30px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:var(--radius-md);background:linear-gradient(180deg, var(--green-50), var(--white) 38%);transition:transform .25s ease, box-shadow .25s ease;}
.price-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);}
.price-card--featured{padding-top:50px;border:2px solid var(--green-600);box-shadow:var(--shadow-md);}
.popular-badge{position:absolute;top:0;left:50%;padding:7px 14px;border-radius:0 0 12px 12px;background:var(--green-700);color:var(--white);font-size:9px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;transform:translateX(-50%);white-space:nowrap;}
.price-label{margin-bottom:8px;color:var(--green-700);font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase;}
.price-card h3{margin:14px 0 16px;color:var(--ink);font-family:Georgia, "Times New Roman", serif;font-size:31px;font-weight:600;line-height:1.2;}
.price-card--featured h3{margin-top:18px;}
.price{margin:0 0 2px;display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;}
.price strong{color:var(--green-800);font-family:Georgia, "Times New Roman", serif;font-size:40px;letter-spacing:-.04em;}
.price span{color:var(--muted);font-size:12px;}
.price-equivalent{min-height:18px;margin:0 0 18px;color:var(--green-700);font-size:11px;font-weight:800;}
.price-equivalent[hidden]{display:block;visibility:hidden;}
.price-intro{min-height:68px;margin-bottom:23px;color:var(--muted);font-size:13px;}
.price-card ul{margin:0 0 28px;padding:22px 0 0;display:grid;gap:12px;border-top:1px solid var(--line);list-style:none;}
.price-card li{position:relative;padding-left:24px;color:#4d474d;font-size:13px;}
.price-card li::before{content:"✓";position:absolute;top:0;left:0;color:var(--green-600);font-weight:900;}
.price-card li.offer-feature-heading{margin-top:10px;padding:12px 0 7px;border-top:1px solid var(--line);color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:15px;font-weight:700;letter-spacing:-.01em;}
.price-card li.offer-feature-heading:first-child{margin-top:0;padding-top:0;border-top:0;}
.price-card li.offer-feature-heading::before{content:none;}
.price-card li[hidden]{display:none;}
.price-card .button{margin-top:auto;}
.reassurance{position:relative;overflow:hidden;max-width:900px;margin:39px auto 0;padding:23px 27px;display:flex;align-items:center;gap:17px;border:1px solid rgba(123, 45, 92, .12);border-radius:var(--radius-sm);background:var(--cream);cursor:pointer;transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;animation:reassurancePulse 2.8s ease-in-out infinite;}
.reassurance::after{content:'';position:absolute;inset:0;background:linear-gradient(110deg, transparent 0%, rgba(255, 255, 255, .1) 40%, rgba(255, 255, 255, .52) 50%, rgba(255, 255, 255, .08) 60%, transparent 100%);transform:translateX(-135%);animation:reassuranceShine 3.8s ease-in-out infinite;pointer-events:none;}
.reassurance:hover,
.reassurance:focus-visible{transform:translateY(-4px) scale(1.01);border-color:rgba(123, 45, 92, .26);box-shadow:0 18px 40px rgba(40, 28, 34, .10);}
.reassurance__icon{width:42px;height:42px;display:grid;place-items:center;flex:0 0 42px;border-radius:50%;background:var(--green-100);color:var(--green-700);font-weight:900;animation:reassuranceIconBounce 1.8s ease-in-out infinite;}
.reassurance strong{display:block;color:var(--ink);font-size:14px;}
.reassurance p{margin:3px 0 0;color:var(--muted);font-size:12px;}
@keyframes reassurancePulse{
0%, 100%{transform:translateY(0);box-shadow:0 0 0 0 rgba(123, 45, 92, .00);}
50%{transform:translateY(-2px);box-shadow:0 14px 34px rgba(123, 45, 92, .10);}}
@keyframes reassuranceShine{
0%, 55%{transform:translateX(-135%);}
85%, 100%{transform:translateX(135%);}}
@keyframes reassuranceIconBounce{
0%, 100%{transform:scale(1) translateY(0);}
50%{transform:scale(1.06) translateY(-2px);}}
@media (min-width: 941px){
.offer .section-heading--center{max-width:920px;margin-bottom:24px;}
.offer .eyebrow{margin-bottom:10px;}
.offer .section-heading h2{margin-bottom:10px;font-size:clamp(38px, 3vw, 48px);line-height:1.06;white-space:nowrap;}
.offer .section-heading > p:last-child{font-size:14px;line-height:1.5;}
.offer-configurator{margin-top:0;margin-bottom:26px;gap:24px;}
.price-card{padding:24px 26px 22px;}
.price-card h3{margin-bottom:10px;font-size:28px;}
.price strong{font-size:36px;}
.price-equivalent{margin-bottom:10px;}
.price-intro{min-height:50px;margin-bottom:14px;font-size:12.5px;}
.price-card ul{margin-bottom:18px;padding-top:14px;gap:8px;}
.price-card li{font-size:12.5px;line-height:1.45;}
.reassurance{margin-top:22px;padding:13px 20px;}
.reassurance__icon{width:34px;height:34px;flex-basis:34px;}}
.about{background:var(--green-50);overflow:hidden;}
.about-grid{display:grid;grid-template-columns:minmax(0, .95fr) minmax(0, 1.05fr);align-items:center;gap:96px;}
.about-visual{position:relative;min-height:630px;}
.about-visual::before{content:"";position:absolute;top:-14px;right:20px;bottom:0;width:76%;border-radius:240px 240px 28px 28px;background:var(--green-100);}
.about-visual > img{position:absolute;z-index:1;inset:0 48px 0 0;width:calc(100% - 48px);height:100%;border-radius:220px 220px 24px 24px;object-fit:cover;box-shadow:var(--shadow-md);}
.about-visual > img{object-position:center 32%;}
.credentials-panel{position:absolute;z-index:2;left:0;right:48px;bottom:0;display:grid;grid-template-columns:1.35fr .7fr 1fr;border:0;border-top:1px solid rgba(109, 43, 76, .12);border-radius:0 0 24px 24px;background:rgba(255, 255, 255, .9);backdrop-filter:blur(10px);overflow:hidden;}
.credentials-panel__item{min-width:0;min-height:52px;padding:10px 13px;display:flex;align-items:center;justify-content:center;text-align:center;}
.credentials-panel__item + .credentials-panel__item{border-left:1px solid rgba(109, 43, 76, .12);}
.credentials-panel__item strong{color:var(--ink);font-size:10.5px;font-weight:750;line-height:1.25;}
.about-copy > p:not(.eyebrow){max-width:620px;color:#6b646b;}
.about-lead{color:var(--ink) !important;font-size:18px;font-weight:650;}
.values-list{margin:32px 0;display:grid;}
.values-list > div{padding:17px 0;display:grid;grid-template-columns:44px 1fr;gap:12px;border-top:1px solid #e1d7dc;}
.values-list > div:last-child{border-bottom:1px solid #e1d7dc;}
.values-list span{color:var(--green-600);font-family:Georgia, "Times New Roman", serif;font-size:17px;font-style:italic;}
.values-list p{margin:0;color:var(--muted);font-size:13px;}
.values-list strong{display:block;margin-bottom:2px;color:var(--ink);font-size:14px;}
.text-link{display:inline-flex;align-items:center;gap:9px;color:var(--green-700);font-size:14px;font-weight:850;}
.text-link span{transition:transform .2s ease;}
.text-link:hover span{transform:translateX(4px);}
.contact{position:relative;overflow:hidden;background:var(--green-950);color:rgba(255, 255, 255, .78);}
.contact::before{content:"";position:absolute;top:-200px;right:-160px;width:500px;height:500px;border:1px solid rgba(255, 255, 255, .09);border-radius:50%;box-shadow:0 0 0 80px rgba(255, 255, 255, .025), 0 0 0 160px rgba(255, 255, 255, .018);}
.contact-grid{position:relative;display:grid;grid-template-columns:minmax(0, .85fr) minmax(0, 1.15fr);align-items:center;gap:90px;}
.contact h2{color:var(--white);}
.contact h2 em{color:#dfb8ca;}
.contact-copy > p:not(.eyebrow):not(.contact-time){max-width:520px;}
.contact-direct{margin-top:35px;display:grid;gap:12px;}
.contact-direct a{padding:12px 0;display:flex;align-items:center;gap:14px;}
.contact-icon{width:43px;height:43px;display:grid;place-items:center;flex:0 0 43px;border-radius:50%;background:rgba(255, 255, 255, .1);color:#dfb8ca;font-weight:900;}
.contact-direct small,
.contact-direct strong{display:block;}
.contact-direct small{color:rgba(255, 255, 255, .55);font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;}
.contact-direct strong{color:var(--white);font-size:15px;}
.contact-time{margin:23px 0 0;color:#dfb8ca;font-size:12px;}
.contact-form-wrap{position:relative;overflow:hidden;padding:40px;border-radius:var(--radius-md);background:var(--white);color:var(--text);box-shadow:0 35px 100px rgba(0, 0, 0, .22);}
.contact-form-wrap form{display:grid;gap:17px;}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
.contact-form-wrap label:not(.consent){display:grid;gap:7px;color:var(--ink);font-size:12px;font-weight:800;}
.contact-form-wrap .field-label{display:inline-flex;align-items:baseline;gap:4px;color:var(--ink);line-height:1.2;}
.contact-form-wrap .field-label b,
.consent b{color:var(--green-700);}
.contact-form-wrap .field-label b{font-size:12px;line-height:1;}
.contact-form-wrap input:not([type="checkbox"]),
.contact-form-wrap select,
.contact-form-wrap textarea{width:100%;border:1px solid #ded5da;border-radius:11px;background:#fdfbfc;color:var(--ink);font-size:13px;outline:0;transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;}
.contact-form-wrap input:not([type="checkbox"]),
.contact-form-wrap select{height:50px;padding:0 14px;}
.contact-form-wrap textarea{min-height:125px;padding:13px 14px;resize:vertical;}
.contact-form-wrap input:not([type="checkbox"]):focus,
.contact-form-wrap select:focus,
.contact-form-wrap textarea:focus{border-color:var(--green-600);background:var(--white);box-shadow:0 0 0 4px rgba(138, 66, 100, .1);}
.contact-form-wrap input:not([type="checkbox"])::placeholder,
.contact-form-wrap textarea::placeholder{color:#98a49f;}
.consent{display:flex;align-items:flex-start;gap:9px;color:var(--muted);cursor:pointer;font-size:11px;font-weight:500;line-height:1.45;}
.consent input{width:17px;height:17px;flex:0 0 17px;margin-top:1px;accent-color:var(--green-700);transform:none;transition:none;}
.consent span{display:block;min-width:0;}
.form-privacy{margin:-5px 0 0;color:#8b9893;font-size:10px;text-align:center;}
.form-alert{margin-bottom:18px;padding:13px 15px;border-radius:10px;font-size:12px;font-weight:700;}
.form-alert--success{background:var(--green-100);color:var(--success);}
.form-alert--error{background:#f8e3e0;color:var(--danger);}
.contact-form-toast{position:absolute;z-index:8;top:17px;left:32px;right:32px;margin:0;padding:13px 15px;border-radius:12px;font-size:12px;font-weight:800;line-height:1.45;box-shadow:0 18px 45px rgba(49, 16, 35, .16);pointer-events:none;opacity:0;transform:translate3d(0, -145%, 0);will-change:transform, opacity;}
.contact-form-toast--success{border:1px solid rgba(44, 130, 92, .24);background:#eaf6f0;color:#14593c;}
.contact-form-toast--error{border:1px solid rgba(154, 54, 43, .18);background:#f9e7e4;color:var(--danger);}
.contact-form-toast.is-visible{animation:contactFormToastSlide 4.2s cubic-bezier(.22, 1, .36, 1) forwards;}
@keyframes contactFormToastSlide{
0%{opacity:0;transform:translate3d(0, -145%, 0);}
13%, 75%{opacity:1;transform:translate3d(0, 0, 0);}
100%{opacity:0;transform:translate3d(0, -145%, 0);}}
@media (max-width: 640px){
.contact-form-toast{top:14px;left:20px;right:20px;}}
.honeypot{position:absolute !important;width:1px !important;height:1px !important;overflow:hidden !important;clip:rect(1px, 1px, 1px, 1px) !important;white-space:nowrap !important;}
.site-footer{padding:10px 0;background:#1d1219;color:rgba(255, 255, 255, .62);}
.footer-grid{display:grid;grid-template-columns:minmax(0, 1.15fr) minmax(0, .85fr);align-items:center;gap:45px;}
.footer-identity{min-width:0;display:flex;align-items:center;gap:18px;}
.brand--footer .brand__name{color:var(--white);font-size:20px;}
.brand--footer .brand__role{margin-top:0;font-size:7px;}
.footer-motto{margin:0;font-family:Georgia, "Times New Roman", serif;font-size:12px;font-style:italic;line-height:1.2;white-space:nowrap;}
.footer-copyright{display:block;margin-top:2px;font-size:7px;}
.footer-contact{min-width:0;justify-self:end;text-align:right;}
.footer-contact__line{display:flex;align-items:center;justify-content:flex-end;gap:7px;white-space:nowrap;}
.footer-title{margin:0 3px 0 0;color:var(--white);font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;}
.footer-contact a{font-size:9px;transition:color .2s ease;}
.footer-contact a:hover{color:var(--white);}
.footer-contact > p{margin:2px 0 0;font-size:7px;line-height:1.2;}
.floating-contact{--floating-contact-stop-shift:0px;position:fixed;z-index:90;right:22px;bottom:22px;min-height:50px;padding:8px 17px 8px 11px;display:flex;align-items:center;gap:8px;border-radius:999px;background:var(--green-700);color:var(--white);box-shadow:0 14px 35px rgba(56, 28, 44, .32);font-size:12px;font-weight:850;transform:translate3d(0, var(--floating-contact-stop-shift), 0);transition:background .2s ease, box-shadow .2s ease;will-change:transform;}
.floating-contact:hover{background:var(--green-900);transform:translate3d(0, calc(var(--floating-contact-stop-shift) - 3px), 0);}
.floating-contact svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8;}

/* ===== 10-auth-panel.css ===== */
/* Logowanie, rejestracja i panel */
.auth-page{min-height:calc(100vh - 82px);display:flex;align-items:center;background:radial-gradient(circle at 12% 18%, rgba(138, 66, 100, .13), transparent 28%),
        linear-gradient(135deg, var(--cream), var(--white) 58%);}
.auth-layout{display:grid;grid-template-columns:minmax(0, .9fr) minmax(420px, .72fr);align-items:center;gap:100px;}
.auth-intro h1{max-width:690px;margin-bottom:23px;font-size:clamp(51px, 6vw, 76px);}
.auth-intro > p:not(.eyebrow){max-width:580px;color:var(--muted);font-size:17px;}
.selected-plan{max-width:430px;margin-top:35px;padding:22px 25px;display:grid;border:1px solid rgba(138, 66, 100, .22);border-radius:var(--radius-sm);background:rgba(255, 255, 255, .78);box-shadow:var(--shadow-sm);}
.selected-plan span{margin-bottom:5px;color:var(--green-700);font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;}
.selected-plan strong{color:var(--ink);font-family:Georgia, "Times New Roman", serif;font-size:24px;}
.selected-plan small{margin-top:3px;color:var(--muted);font-size:12px;}
.auth-card{padding:42px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);box-shadow:var(--shadow-md);}
.auth-card__kicker{margin-bottom:8px;color:var(--green-700);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
.auth-card h2{margin-bottom:10px;font-size:43px;}
.auth-card__lead{margin-bottom:27px;color:var(--muted);font-size:13px;}
.auth-card__lead--after-submit{margin-top:16px;}
.auth-card__lead a{color:var(--green-700);font-weight:850;}
.auth-form{display:grid;gap:17px;}
.auth-form > label:not(.consent){display:grid;gap:7px;color:var(--ink);font-size:12px;font-weight:800;}
.auth-form input:not([type="checkbox"]){width:100%;height:51px;padding:0 14px;border:1px solid #ded5da;border-radius:11px;background:#fdfbfc;color:var(--ink);font-size:13px;outline:0;transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;}
.auth-form input:not([type="checkbox"]):focus{border-color:var(--green-600);background:var(--white);box-shadow:0 0 0 4px rgba(138, 66, 100, .1);}
.auth-form input::placeholder{color:#a19aa0;}
.form-alert span{display:block;}
.form-alert span + span{margin-top:5px;}
.intake-closed-alert{display:grid;gap:10px;align-items:start;color:var(--ink);font-weight:500;line-height:1.55;}
.intake-closed-alert strong{font-size:15px;color:var(--plum-800);}
.intake-closed-alert span{color:#6d6671;font-weight:500;}
.intake-closed-alert .button{width:fit-content;margin-top:4px;}
.dashboard{min-height:calc(100vh - 82px);background:var(--cream);}
.dashboard-layout{display:grid;grid-template-columns:minmax(290px, 350px) minmax(0, 1fr);align-items:start;gap:28px;}
.dashboard-sidebar{position:sticky;top:106px;display:grid;gap:18px;}
.dashboard-content{display:grid;gap:22px;}
@media (min-width: 1025px){
body.patient-panel-viewport:not(.patient-chat-viewport){height:100dvh;overflow:hidden;}
body.patient-panel-viewport:not(.patient-chat-viewport) #main-content{height:calc(100dvh - var(--header-height));min-height:0;overflow:hidden;}
body.patient-panel-viewport:not(.patient-chat-viewport) .dashboard.section{height:100%;min-height:0;padding:22px 0;align-items:stretch;overflow:hidden;}
body.patient-panel-viewport:not(.patient-chat-viewport) .dashboard-layout{height:100%;min-height:0;align-items:stretch;overflow:hidden;}
body.patient-panel-viewport:not(.patient-chat-viewport) .dashboard-content{height:100%;min-height:0;max-height:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;touch-action:pan-y;align-content:start;grid-auto-rows:max-content;padding-right:8px;}
body.patient-panel-viewport:not(.patient-chat-viewport) .dashboard-sidebar{position:static;top:auto;height:100%;min-height:0;max-height:100%;overflow:hidden;grid-template-rows:auto minmax(0, 1fr);align-content:stretch;gap:12px;padding-right:8px;}
body.patient-panel-viewport:not(.patient-chat-viewport) .dashboard-sidebar .dashboard-panel-card--hero{padding:18px 22px;}
body.patient-panel-viewport:not(.patient-chat-viewport) .dashboard-sidebar .dashboard-panel-card--hero .eyebrow{margin-bottom:6px;font-size:12px;}
body.patient-panel-viewport:not(.patient-chat-viewport) .dashboard-sidebar .dashboard-panel-card--hero h1{margin:4px 0 0;font-size:clamp(36px, 3vw, 48px);line-height:.95;}
body.patient-panel-viewport:not(.patient-chat-viewport) .dashboard-sidebar .dashboard-panel-nav{min-height:0;height:100%;padding:12px;grid-template-rows:repeat(var(--patient-sidebar-items, 11), minmax(0, 1fr));gap:7px;}
body.patient-panel-viewport:not(.patient-chat-viewport) .dashboard-sidebar .dashboard-panel-nav a,
    body.patient-panel-viewport:not(.patient-chat-viewport) .dashboard-sidebar .dashboard-panel-nav button{min-height:0;padding:7px 14px;display:flex;align-items:center;font-size:13px;line-height:1.15;}}
.dashboard-panel-card{padding:30px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);box-shadow:var(--shadow-sm);}
.dashboard-panel-card--hero h1{margin:12px 0 14px;font-size:clamp(46px, 4.4vw, 68px);line-height:.96;}
.dashboard-sidebar__lead{color:var(--muted);font-size:16px;}
.dashboard-panel-nav{display:grid;gap:10px;padding:18px;}
.dashboard-panel-nav button{width:100%;font-family:inherit;text-align:left;cursor:pointer;}
.dashboard-panel-nav a,
.dashboard-panel-nav button{padding:13px 16px;border:1px solid var(--line);border-radius:14px;background:var(--green-50);color:var(--ink);font-size:14px;font-weight:700;transition:transform .18s ease, border-color .18s ease, color .18s ease, background .18s ease;}
.dashboard-panel-nav a:hover,
.dashboard-panel-nav a.is-active,
.dashboard-panel-nav button:hover{transform:translateY(-1px);border-color:rgba(123, 45, 92, .22);background:rgba(123, 45, 92, .1);color:var(--green-800);}
.dashboard-panel-nav a.is-active{box-shadow:inset 4px 0 0 var(--green-700);}
.dashboard-account-card{padding-top:24px;}
.dashboard-panel-card--wide{padding:38px;background:linear-gradient(145deg, var(--white), var(--green-50));}
.dashboard-panel-card--wide h2{margin:16px 0 14px;font-size:42px;}
.dashboard-panel-card--wide > p:not(.dashboard-price){max-width:780px;color:var(--muted);}
.dashboard-price{margin-bottom:16px;color:var(--green-800);font-family:Georgia, "Times New Roman", serif;font-size:43px;font-weight:700;}
.dashboard-price span{color:var(--muted);font-family:Inter, sans-serif;font-size:12px;font-weight:500;}
.dashboard-module-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:22px;}
.dashboard-module-card h3{margin:16px 0 12px;font-size:31px;}
.dashboard-module-card p{color:var(--muted);}
.dashboard-module-status{display:inline-flex;margin-top:20px;padding:9px 12px;border-radius:999px;background:var(--green-50);color:var(--green-800);font-size:12px;font-weight:700;}
.dashboard-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px;}
.dashboard-section-head h2{margin:12px 0 0;font-size:38px;}
.dashboard-section-head p{max-width:420px;color:var(--muted);}
.dashboard-summary-grid{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));gap:16px;}
.dashboard-summary-card{padding:18px;border:1px solid var(--line);border-radius:20px;background:var(--green-50);}
.dashboard-summary-card span{display:block;margin-bottom:12px;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;}
.dashboard-summary-card strong{display:block;margin-bottom:10px;color:var(--ink);font-size:18px;line-height:1.2;}
.dashboard-summary-card small{display:block;color:var(--muted);font-size:13px;line-height:1.5;}
.dashboard-summary-grid--compact{grid-template-columns:repeat(3, minmax(0, 1fr));}
.dashboard-section-head--compact{justify-content:flex-start;}
.dashboard-panel-card--downloads{display:flex;flex-direction:column;min-height:clamp(560px, calc(100vh - 120px), 820px);}
.dashboard-files-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:22px;flex:1;min-height:0;align-items:stretch;}
.dashboard-files-card{display:flex;flex-direction:column;padding:24px;border:1px solid var(--line);border-radius:22px;background:var(--green-50);min-height:0;height:100%;overflow:hidden;}
.dashboard-files-card--education{grid-column:1 / -1;height:auto;min-height:220px;}
.dashboard-file-list--education{grid-template-columns:repeat(2, minmax(0, 1fr));align-content:start;}
@media (max-width: 900px){
.dashboard-files-grid,
    .dashboard-file-list--education{grid-template-columns:1fr;}
.dashboard-files-card--education{grid-column:auto;}}
.dashboard-files-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px;flex:0 0 auto;}
.dashboard-files-card__head h3{margin:0;font-size:30px;line-height:1.1;}
.dashboard-file-list{display:grid;gap:16px;flex:1;min-height:0;overflow-y:auto;padding-right:8px;scrollbar-width:thin;scrollbar-color:rgba(123, 45, 92, .45) rgba(123, 45, 92, .08);}
.dashboard-file-list::-webkit-scrollbar{width:10px;}
.dashboard-file-list::-webkit-scrollbar-track{background:rgba(123, 45, 92, .08);border-radius:999px;}
.dashboard-file-list::-webkit-scrollbar-thumb{background:rgba(123, 45, 92, .45);border-radius:999px;}
.dashboard-file-tile{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:18px 0 0;border-top:1px solid var(--line);}
.dashboard-file-tile:first-child{padding-top:0;border-top:0;}
.dashboard-file-tile strong{display:block;color:var(--ink);font-size:18px;line-height:1.3;}
.dashboard-file-tile p{margin:0;color:var(--muted);font-size:15px;line-height:1.6;}
.dashboard-file-tile .button{margin-top:4px;}
.dashboard-module-card--wide{grid-column:1 / -1;}
.dashboard-download-list{margin:20px 0 0;padding:0;list-style:none;}
.dashboard-download-list li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0;border-top:1px solid var(--line);}
.dashboard-download-list li:first-child{padding-top:0;border-top:0;}
.dashboard-download-list strong{display:block;margin-bottom:6px;font-size:16px;}
.dashboard-download-list small{display:block;color:var(--muted);font-size:13px;line-height:1.45;}
.dashboard-summary-card--action{display:flex;flex-direction:column;align-items:flex-start;}
.dashboard-summary-card--action .button{margin-top:16px;}
.dashboard-page-header{padding:34px 38px;}
.dashboard-page-header h2{margin:14px 0 10px;font-size:clamp(38px, 4vw, 52px);}
.dashboard-page-header p{max-width:800px;color:var(--muted);font-size:16px;}
.dashboard-quick-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:14px;}
.dashboard-quick-grid a{padding:19px;border:1px solid var(--line);border-radius:18px;display:grid;gap:6px;background:var(--green-50);transition:transform .18s ease, border-color .18s ease, background .18s ease;}
.dashboard-quick-grid a:hover{transform:translateY(-2px);border-color:rgba(123, 45, 92, .22);background:rgba(123, 45, 92, .08);}
.dashboard-quick-grid strong{color:var(--ink);font-size:17px;}
.dashboard-quick-grid span{color:var(--muted);font-size:13px;}
.patient-chat-page{min-height:670px;padding:0;overflow:hidden;display:grid;grid-template-rows:auto minmax(360px, 1fr) auto;}
.patient-chat-page__header{padding:18px 22px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:auto minmax(0, 1fr) auto;align-items:center;gap:14px;background:linear-gradient(135deg, var(--white), var(--green-50));}
.patient-chat-page__avatar{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--green-700);color:var(--white);font-size:14px;font-weight:900;}
.patient-chat-page__header strong{display:block;color:var(--ink);font-size:18px;}
.patient-chat-page__header span{display:block;margin-top:3px;color:var(--muted);font-size:12px;}
.patient-chat-page__header em{padding:7px 10px;border-radius:999px;background:rgba(123, 45, 92, .09);color:var(--green-800);font-size:11px;font-style:normal;font-weight:800;}
.patient-chat-page__header--title-only{grid-template-columns:minmax(0, 1fr);align-items:start;gap:10px;}
.patient-chat-page__header--title-only h2{margin:12px 0 0;color:var(--ink);font-family:Georgia, "Times New Roman", serif;font-size:clamp(34px, 4vw, 58px);line-height:1.05;}
.patient-chat-page__messages{overflow-y:auto;padding:24px;display:flex;flex-direction:column;gap:14px;background:linear-gradient(180deg, rgba(123, 45, 92, .035), transparent 35%);}
.patient-chat-message{width:fit-content;max-width:min(76%, 720px);padding:15px 17px;border-radius:20px;}
.patient-chat-message strong{display:block;margin-bottom:6px;font-size:13px;}
.patient-chat-message p{margin:0;font-size:15px;line-height:1.6;}
.patient-chat-message time{display:block;margin-top:8px;color:var(--muted);font-size:11px;}
.patient-chat-message--admin{border-top-left-radius:7px;background:var(--green-50);}
.patient-chat-message--user{margin-left:auto;border-top-right-radius:7px;background:rgba(123, 45, 92, .1);}
.patient-chat-system-note{align-self:center;max-width:640px;padding:8px 12px;border-radius:999px;background:rgba(32, 36, 43, .055);color:var(--muted);font-size:11px;text-align:center;}
.patient-chat-page__composer{padding:17px 20px 20px;border-top:1px solid var(--line);background:var(--white);}
.patient-chat-page__composer textarea{width:100%;min-height:90px;padding:14px 15px;border:1px solid var(--line);border-radius:16px;resize:vertical;background:#fdfbfc;color:var(--ink);font:inherit;outline:none;}
.patient-chat-page__composer textarea:focus{border-color:var(--green-700);box-shadow:0 0 0 4px rgba(123, 45, 92, .08);}
.patient-chat-page__actions{margin-top:12px;display:flex;align-items:center;justify-content:space-between;gap:14px;}
.patient-chat-page__actions span{color:var(--muted);font-size:12px;}
.patient-chat-composer__feedback{flex:1;min-height:18px;text-align:right;}
.patient-chat-composer__feedback:empty{display:none;}
.patient-chat-composer__feedback.is-error{color:#a32626;font-weight:700;}
.dashboard-files-panel{padding:0;overflow:hidden;}
.dashboard-files-toolbar{padding:20px 24px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--green-50);}
.dashboard-files-toolbar strong{display:block;color:var(--ink);font-size:17px;}
.dashboard-files-toolbar > div > span{display:block;margin-top:3px;color:var(--muted);font-size:12px;}
.dashboard-files-empty{min-height:430px;padding:50px 30px;display:grid;place-content:center;justify-items:center;text-align:center;}
.dashboard-files-empty > span{padding:7px 10px;border-radius:999px;background:var(--green-50);color:var(--green-800);font-size:11px;font-weight:800;}
.dashboard-files-empty h3{max-width:650px;margin:18px 0 10px;font-size:34px;}
.dashboard-files-empty p{max-width:650px;color:var(--muted);}
.dashboard-files-empty small{max-width:650px;margin-top:16px;color:var(--green-800);font-size:12px;font-weight:700;}
.dashboard-placeholder-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:16px;}
.dashboard-placeholder-card{min-height:230px;padding:22px;border:1px solid var(--line);border-radius:20px;background:var(--green-50);}
.dashboard-placeholder-card h3{margin:20px 0 10px;font-size:26px;}
.dashboard-placeholder-card p{color:var(--muted);font-size:14px;}
.education-materials-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:18px;padding:24px;}
.education-material-tile{display:flex;flex-direction:column;justify-content:space-between;gap:18px;min-height:220px;padding:22px;border:1px solid var(--line);border-radius:20px;background:var(--green-50);}
.education-material-tile__body{display:grid;gap:10px;}
.education-material-tile__category{width:fit-content;padding:6px 9px;border-radius:999px;background:rgba(123, 45, 92, .09);color:var(--green-800);font-size:10px;font-weight:850;letter-spacing:.06em;text-transform:uppercase;}
.education-material-tile strong{display:block;color:var(--ink);font-size:22px;line-height:1.25;}
.education-material-tile p{margin:0;color:var(--muted);font-size:15px;line-height:1.6;}
.education-material-tile small{display:block;color:var(--muted);font-size:12px;line-height:1.5;}
.education-material-tile .button{width:100%;justify-content:center;}
.account-details{margin:23px 0 28px;}
.account-details > div{padding:15px 0;border-bottom:1px solid var(--line);}
.account-details dt{color:var(--muted);font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;}
.account-details dd{margin:4px 0 0;overflow-wrap:anywhere;color:var(--ink);font-size:14px;font-weight:750;}
.dashboard-account-layout{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:22px;}
.dashboard-alert{margin-bottom:16px;padding:16px 18px;border:1px solid var(--line);border-radius:18px;font-size:14px;font-weight:600;}
.dashboard-alert--success{background:rgba(52, 138, 98, .1);color:#235c42;border-color:rgba(52, 138, 98, .18);}
.dashboard-alert--error{background:rgba(157, 47, 60, .08);color:#8f2430;border-color:rgba(157, 47, 60, .18);}
.dashboard-settings-form{margin-top:18px;}
.dashboard-settings-form > .button,
.dashboard-settings-form > .dashboard-security-actions,
.dashboard-settings-form > .dashboard-alert{margin-top:14px;}

.dashboard-security-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.dashboard-security-actions--phone{flex-wrap:nowrap;}
.dashboard-security-actions--phone .button{flex:0 0 auto;margin-top:0;}
@media (max-width:720px){.dashboard-security-actions--phone{flex-wrap:wrap;}.dashboard-security-actions--phone .button{flex:1 1 100%;justify-content:center;}}
.dashboard-field-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:16px;margin-bottom:18px;}
.dashboard-field-grid--single{grid-template-columns:1fr;}
.dashboard-field{display:grid;gap:8px;}
.dashboard-field span{color:var(--ink);font-size:12px;font-weight:800;}
.dashboard-field input{width:100%;min-height:56px;padding:0 16px;border:1px solid var(--line);border-radius:16px;background:var(--white);color:var(--ink);font:inherit;transition:border-color .18s ease, box-shadow .18s ease;}
.dashboard-field input:focus{outline:none;border-color:rgba(123, 45, 92, .4);box-shadow:0 0 0 4px rgba(123, 45, 92, .08);}
.dashboard-field--locked small{color:var(--muted);font-size:11px;font-weight:600;line-height:1.45;}
.dashboard-field--locked .dashboard-client-id{border-style:dashed;background:#f8f4f6;color:#615a61;font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;font-size:13px;letter-spacing:.035em;cursor:text;}
.dashboard-field--locked .dashboard-client-id:focus{border-color:rgba(123, 45, 92, .28);box-shadow:0 0 0 4px rgba(123, 45, 92, .055);}

/* ===== 20-posts-list.css ===== */
/* Posty */
.posts-directory{min-height:calc(100svh - var(--header-height) + 2px);padding:32px 0 28px;background:#fbfaf9;}
.posts-directory__layout{display:grid;grid-template-columns:270px minmax(0, 1fr) 285px;align-items:start;gap:32px;}
.posts-sidebar{position:sticky;top:calc(var(--header-height) + 32px);height:calc(100svh - var(--header-height) - 64px);align-self:start;display:grid;grid-template-rows:auto minmax(0, 1fr) minmax(0, 1fr);gap:19px;}
.posts-sidebar-nav{padding:22px 20px 19px;border:1px solid var(--line);border-radius:20px;background:var(--white);box-shadow:var(--shadow-sm);}
.posts-sidebar-nav > span{color:var(--green-700);font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
.posts-sidebar-nav h2{margin:3px 0 15px;font-size:27px;}
.posts-sidebar-nav__buttons{display:grid;gap:5px;}
.posts-sidebar-nav button{width:100%;min-height:36px;padding:8px 12px;border:0;border-radius:11px;background:transparent;color:var(--text);cursor:pointer;font-size:11px;font-weight:800;text-align:left;transition:background .2s ease, color .2s ease, transform .2s ease;}
.posts-sidebar-nav button:hover{background:var(--green-50);color:var(--green-700);transform:translateX(2px);}
.posts-sidebar-nav button.is-active{background:var(--green-700);color:var(--white);}
.posts-topic-card{padding:23px;border:1px solid var(--line);border-radius:20px;display:flex;flex-direction:column;background:linear-gradient(145deg, var(--white), #f8f0f4);box-shadow:var(--shadow-sm);}
.posts-topic-card__label{display:block;color:var(--green-700);font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
.posts-topic-card h2{margin:3px 0 8px;font-size:27px;}
.posts-topic-card p{margin:0 0 14px;color:var(--muted);font-size:12px;}
.posts-topic-card .button{margin-top:auto;}
.posts-offer-card{min-height:0;padding:17px 22px;overflow:hidden;border:1px solid var(--line);border-radius:20px;display:flex;flex-direction:column;justify-content:flex-start;background:linear-gradient(145deg, var(--white), var(--cream));color:var(--muted);box-shadow:var(--shadow-sm);transition:border-color .2s ease, box-shadow .2s ease;}
.posts-offer-card:hover{border-color:var(--green-100);box-shadow:0 14px 34px rgba(81, 36, 59, .12);}
.posts-offer-card > span{color:var(--green-700);font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
.posts-offer-card h2{margin:3px 0 8px;color:var(--ink);font-size:21px;line-height:1.12;}
.posts-offer-card p{margin:0 0 12px;color:var(--muted);font-size:11px;line-height:1.5;}
.posts-offer-card .button{margin-top:auto;min-height:44px;padding-top:10px;padding-bottom:10px;}
.posts-sidebar--left{grid-column:1;}
.posts-sidebar--right{grid-column:3;}
.posts-feed{grid-column:2;min-width:0;}
.post-feed-card{margin-bottom:27px;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);box-shadow:0 12px 36px rgba(81, 36, 59, .065);}
.post-feed-card[hidden]{display:none;}
.post-feed-card__header{padding:20px 24px 0;display:grid;grid-template-columns:45px 1fr auto;align-items:center;gap:12px;}
.post-feed-card__header > img{width:45px;height:45px;border-radius:50%;object-fit:cover;object-position:50% 28%;}
.post-feed-card__header strong{display:block;color:var(--ink);font-size:12px;}
.post-feed-card__category{padding:7px 10px;border-radius:999px;background:var(--green-50);color:var(--green-700);font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;}
.post-feed-card__copy{padding:22px 24px 23px;}
.post-feed-card__copy h3{max-width:900px;margin:0 0 14px;color:var(--ink);font-family:Georgia, "Times New Roman", serif;font-size:clamp(31px, 3.2vw, 41px);font-weight:600;line-height:1.17;}
.post-feed-card__copy h3 a{transition:color .2s ease;}
.post-feed-card__copy h3 a:hover{color:var(--green-700);}
.post-feed-card__copy p{max-width:980px;margin:0;color:#1f1b1d;font-size:clamp(18px,1.45vw,22px);line-height:1.68;}
.post-meta{display:flex;align-items:center;gap:12px;color:#8d858b;font-size:9px;font-weight:700;}
.post-meta span::before{content:"•";margin-right:12px;color:var(--green-600);}
.post-media,
.post-gallery,
.post-video{margin:0;background:var(--green-950);}
.post-media{position:relative;}
.post-media img,
.post-gallery__slide img{width:100%;aspect-ratio:16 / 9;object-fit:cover;}
.post-media figcaption,
.post-gallery__slide figcaption{position:absolute;right:14px;bottom:14px;left:14px;padding:9px 12px;border-radius:10px;background:rgba(29, 18, 25, .78);color:rgba(255, 255, 255, .88);backdrop-filter:blur(8px);font-size:10px;}
.post-gallery{position:relative;overflow:hidden;}
.post-gallery__viewport{overflow:hidden;}
.post-gallery__track{display:flex;transition:transform .38s ease;}
.post-gallery__slide{position:relative;min-width:100%;margin:0;}
.post-gallery__arrow{position:absolute;z-index:3;top:50%;width:46px;height:46px;border:1px solid rgba(255, 255, 255, .38);border-radius:50%;display:grid;place-items:center;background:rgba(29, 18, 25, .78);color:var(--white);box-shadow:0 8px 25px rgba(0, 0, 0, .18);cursor:pointer;transform:translateY(-50%);transition:background .2s ease, transform .2s ease;}
.post-gallery__arrow:hover{background:var(--green-700);transform:translateY(-50%) scale(1.05);}
.post-gallery__arrow--prev{left:17px;}
.post-gallery__arrow--next{right:17px;}
.post-gallery__footer{position:absolute;z-index:3;right:14px;top:14px;padding:7px 9px;display:flex;align-items:center;gap:10px;border-radius:999px;background:rgba(29, 18, 25, .78);color:var(--white);}
.post-gallery__dots{display:flex;gap:5px;}
.post-gallery__dots button{width:7px;height:7px;padding:0;border:0;border-radius:50%;background:rgba(255, 255, 255, .45);cursor:pointer;}
.post-gallery__dots button.is-active{background:var(--white);}
.post-gallery__status{min-width:25px;font-size:9px;font-weight:800;}
.post-video{aspect-ratio:16 / 9;}
.post-video iframe{width:100%;height:100%;border:0;}
.post-feed-card__footer{min-height:57px;padding:9px 15px;display:flex;align-items:center;gap:5px;}
.post-action{min-height:39px;padding:9px 11px;border:0;border-radius:9px;display:inline-flex;align-items:center;gap:6px;background:transparent;color:var(--muted);cursor:pointer;font-size:11px;font-weight:850;transition:background .2s ease, color .2s ease;}
.post-action:hover{background:var(--green-50);color:var(--green-700);}
.post-action--primary{color:var(--green-700);}
.post-action--share{margin-left:auto;}
.post-action.is-copied{color:var(--success);}
.posts-feed__empty{padding:35px;border:1px dashed var(--line);border-radius:var(--radius-md);color:var(--muted);text-align:center;}
.button--outline{border:1px solid var(--green-600);background:var(--white);color:var(--green-700);}
.button--outline:hover{background:var(--green-50);}
/* Artykuł */
.article-header{padding:72px 0 64px;background:radial-gradient(circle at 50% 110%, rgba(138, 66, 100, .11), transparent 37%),
        var(--cream);text-align:center;}
.article-header__inner{max-width:940px;}
.back-link{margin-bottom:27px;display:block;color:var(--green-700);font-size:11px;font-weight:850;}
.article-header h1{margin:20px 0 21px;font-size:clamp(45px, 5.6vw, 68px);}
.article-header__inner > p{max-width:770px;margin:0 auto 25px;color:var(--muted);font-size:16px;}
.article-byline{display:inline-flex;align-items:center;gap:11px;text-align:left;}
.article-byline > img{width:45px;height:45px;border-radius:50%;object-fit:cover;object-position:50% 28%;}
.article-byline strong{display:block;color:var(--ink);font-size:12px;}
.post-meta--large{justify-content:flex-start;font-size:9px;}
.article-media-wrap{max-width:1040px;margin-top:58px;}
.article-media-wrap .post-media,
.article-media-wrap .post-gallery,
.article-media-wrap .post-video{overflow:hidden;border-radius:var(--radius-md);box-shadow:var(--shadow-md);}
.article-layout{padding-top:74px;padding-bottom:100px;display:grid;grid-template-columns:minmax(0, 1fr) 325px;align-items:start;gap:80px;}
.article-main-column{min-width:0;}
.article-content{max-width:760px;}
.article-content > p,
.article-content > ul,
.article-content > ol,
.article-content > blockquote{margin-bottom:24px;color:#514b51;font-family:Georgia, "Times New Roman", serif;font-size:18px;line-height:1.82;}
.article-content h2{margin:44px 0 19px;font-size:37px;}
.article-content ul,
.article-content ol{padding-left:24px;}
.article-content li + li{margin-top:8px;}
.article-content li::marker{color:var(--green-600);}
.article-content blockquote{margin:37px 0;padding:22px 27px;border-left:4px solid var(--green-600);border-radius:0 14px 14px 0;background:var(--green-50);color:var(--green-900);font-size:22px;font-style:italic;}
.article-note{margin-top:43px;padding:26px 29px;border-left:4px solid var(--green-600);border-radius:0 12px 12px 0;background:var(--green-50);}
.article-note strong{color:var(--green-800);font-size:11px;letter-spacing:.08em;text-transform:uppercase;}
.article-note p{margin:7px 0 0;color:var(--muted);font-size:12px;}
.article-actions{margin-top:28px;display:flex;flex-wrap:wrap;gap:10px;}
.article-navigation{margin-top:55px;padding-top:25px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:20px;}
.article-navigation a{min-width:0;}
.article-navigation span{display:block;margin-bottom:5px;color:var(--green-700);font-size:9px;font-weight:900;letter-spacing:.07em;text-transform:uppercase;}
.article-navigation strong{display:block;color:var(--ink);font-family:Georgia, "Times New Roman", serif;font-size:17px;line-height:1.35;}
.article-navigation__next{grid-column:2;text-align:right;}
.article-aside{position:sticky;top:105px;padding:27px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--green-50);}
.article-aside__author{margin-bottom:24px;padding-bottom:19px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:11px;}
.article-aside__author img{width:48px;height:48px;border-radius:50%;object-fit:cover;object-position:50% 28%;}
.article-aside__author span{display:block;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase;}
.article-aside__author strong{color:var(--ink);font-size:12px;}
.article-aside h2{margin-bottom:15px;font-size:31px;}
.article-aside > p:not(.eyebrow){margin-bottom:22px;color:var(--muted);font-size:12px;}
.error-page{min-height:65vh;display:flex;align-items:center;text-align:center;}
.error-page h1{margin-bottom:15px;font-size:65px;}
.error-page .eyebrow{justify-content:center;}
.error-page .button{margin-top:18px;}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s ease, transform .65s ease;}
.reveal--delay{transition-delay:.12s;}
.reveal--delay-2{transition-delay:.22s;}
.reveal.is-visible{opacity:1;transform:translateY(0);}
@media (prefers-reduced-motion: reduce){
html{scroll-behavior:auto;}
*, *::before, *::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;scroll-behavior:auto !important;transition-duration:.01ms !important;}
.reveal{opacity:1;transform:none;}}
@media (max-width: 1120px){
.primary-nav{gap:15px;}
.nav-account a{padding-inline:12px;}
.hero-grid{gap:45px;}
.hero-visual{margin-top:0;}
.hero-photo{min-height:590px;height:590px;}
.about-grid{gap:60px;}
.contact-grid{gap:55px;}}
@media (max-width: 940px){
.section{padding:72px 0;}
.menu-toggle{display:block;margin-left:0;}
.nav-account{display:none;}
.nav-account--logged-in{margin-left:auto;display:flex;}
.nav-account--logged-in > a{display:none;}
.primary-nav{position:fixed;inset:92px 20px auto;padding:24px;display:grid;gap:0;visibility:hidden;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);box-shadow:var(--shadow-md);opacity:0;transform:translateY(-12px);transition:opacity .2s ease, transform .2s ease, visibility .2s ease;}
.primary-nav.is-open{visibility:visible;opacity:1;transform:translateY(0);}
.primary-nav a{padding:13px 6px;border-bottom:1px solid var(--line);font-size:15px;}
.primary-nav a:last-child{border-bottom:0;}
.primary-nav a::after{display:none;}
.primary-nav__account-mobile{margin-top:13px;padding-top:14px;display:grid;grid-template-columns:1fr 1fr;gap:9px;border-top:1px solid var(--line);}
.primary-nav__account-mobile a{padding:11px 12px;justify-content:center;border:1px solid var(--green-600);border-radius:999px;color:var(--green-700);text-align:center;}
.primary-nav__account-mobile .mobile-register{background:var(--green-700);color:var(--white);}
.hero{min-height:calc(100svh - var(--header-height));padding-top:64px;}
.hero-grid,
    .about-grid,
    .contact-grid,
    .article-layout{grid-template-columns:1fr;}
.hero-grid{gap:30px;}
.hero-copy{max-width:720px;}
.hero h1{max-width:740px;}
.hero-visual{margin-top:0;gap:14px;}
.hero-photo{min-height:700px;height:700px;}
.hero-motto{left:30px;}
.home-social{width:100%;margin:0;}
.section-heading--split{grid-template-columns:1fr;gap:20px;}
.section-heading--split > p{max-width:650px;}
.transformations__heading > p{justify-self:start;}
.pricing-grid{grid-template-columns:1fr;max-width:680px;margin-inline:auto;}
.price-intro{min-height:auto;}
.about-grid{gap:65px;}
.about-visual{width:min(100%, 620px);margin-inline:auto;}
.contact-grid{gap:55px;}
.contact-copy{max-width:650px;}
.posts-directory__layout{grid-template-columns:1fr;}
.posts-sidebar{position:static;height:auto;grid-template-columns:minmax(0, 1fr) minmax(260px, .75fr);grid-template-rows:auto;}
.post-feed-card__copy p{font-size:17px;line-height:1.66;}
.post-summary-blocks > .post-block--paragraph{font-size:17px;line-height:1.7;}
.post-summary-blocks > .post-block--list{font-size:16px;line-height:1.68;}
.posts-topic-card{padding:23px;}
.posts-offer-card{padding:23px;}
.posts-offer-card{grid-column:1 / -1;}
.article-layout{gap:50px;}
.article-content{max-width:none;}
.article-aside{position:static;max-width:540px;}
.auth-layout,
    .dashboard-layout{grid-template-columns:1fr;}
.dashboard-sidebar{position:static;}
.dashboard-module-grid{grid-template-columns:1fr;}
.dashboard-summary-grid{grid-template-columns:repeat(2, minmax(0, 1fr));}
.dashboard-placeholder-grid{grid-template-columns:1fr;}
.education-materials-grid{grid-template-columns:1fr;padding:20px;}
.dashboard-section-head{align-items:start;flex-direction:column;}
.auth-layout{gap:50px;}
.auth-intro{max-width:720px;}}
@media (max-width: 700px){
:root{--header-height:73px;}
.container{width:min(calc(100% - 28px), var(--container));}
.section{padding:56px 0;}
.section > .container{width:min(calc(100% - 28px), var(--container));}
.nav-wrap{min-height:72px;}
.brand__name{font-size:23px;}
.primary-nav{inset:80px 14px auto;}
.panel-notifications__menu{position:fixed;top:80px;right:14px;}
h2{font-size:clamp(37px, 11vw, 49px);}
.hero{padding-top:50px;padding-bottom:62px;}
.hero h1{font-size:clamp(40px, 10.8vw, 54px);}
.hero-lead{font-size:16px;}
.hero-actions{display:grid;}
.hero-actions .button{width:100%;}
.hero-visual{gap:16px;}
.hero-photo{min-height:490px;height:490px;border-radius:20px;}
.hero-motto{right:22px;bottom:22px;left:22px;font-size:21px;}
.section-heading{margin-bottom:40px;}
.section-heading--center{text-align:left;}
.section-heading--center .eyebrow{justify-content:flex-start;}
.offer-configurator{margin-top:-5px;margin-bottom:40px;grid-template-columns:1fr;gap:25px;}
.offer-segmented button{padding-inline:8px;font-size:11px;}
.transformations__heading h2{font-size:clamp(34px, 9vw, 44px);}
.transform-set{grid-template-columns:1fr;}
.transform-slider{padding-inline:8px;}
.transformation-compare{min-height:300px;}
.transformation-compare > figure,
    .transformation-compare img{min-height:295px;}
.transform-content{padding:16px 0 0;}
.slider-controls > button{top:125px;width:46px;height:46px;}
.slider-controls > button[data-slider-prev]{left:-5px;}
.slider-controls > button[data-slider-next]{right:-5px;}
.price-card{padding:32px 24px 25px;}
.price-card h3{font-size:27px;}
.price strong{font-size:37px;}
.reassurance{align-items:flex-start;}
.about-visual{min-height:500px;}
.about-visual::before{top:-10px;right:7%;bottom:0;width:79%;}
.about-visual > img{inset:0 30px 0 0;width:calc(100% - 30px);height:100%;}
.credentials-panel{right:30px;grid-template-columns:1.35fr .7fr 1fr;}
.credentials-panel__item{min-height:52px;padding:9px 8px;}
.credentials-panel__item strong{font-size:9px;}
.contact-grid{gap:43px;}
.contact-form-wrap{padding:25px 20px;}
.form-row{grid-template-columns:1fr;}
.footer-grid{grid-template-columns:1fr;gap:10px;}
.footer-identity{align-items:flex-start;flex-direction:column;gap:4px;}
.footer-motto{white-space:normal;}
.footer-contact{justify-self:start;text-align:left;}
.footer-contact__line{justify-content:flex-start;flex-wrap:wrap;white-space:normal;}
.floating-contact{right:14px;bottom:14px;padding-right:11px;}
.floating-contact span{display:none;}
.posts-directory{padding:22px 0 75px;}
.posts-directory__layout{gap:42px;}
.posts-sidebar{grid-template-columns:1fr;}
.posts-sidebar-nav{padding:18px;}
.posts-sidebar-nav h2{margin-bottom:12px;font-size:24px;}
.posts-sidebar-nav__buttons{padding-bottom:3px;display:flex;overflow-x:auto;scrollbar-width:none;}
.posts-sidebar-nav__buttons::-webkit-scrollbar{display:none;}
.posts-sidebar-nav button{width:auto;min-width:max-content;min-height:36px;padding:8px 13px;border:1px solid var(--line);border-radius:999px;text-align:center;}
.posts-sidebar-nav button:hover{transform:none;}
.posts-topic-card{padding:20px;}
.posts-offer-card{padding:20px;}
.post-feed-card{border-radius:18px;}
.post-feed-card__header{padding:17px 17px 0;grid-template-columns:42px 1fr;}
.post-feed-card__header > img{width:42px;height:42px;}
.post-feed-card__category{grid-column:1 / -1;justify-self:start;margin-top:3px;}
.post-feed-card__copy{padding:18px 17px 19px;}
.post-feed-card__copy h3{font-size:clamp(27px, 8.4vw, 34px);}
.post-media img,
    .post-gallery__slide img{aspect-ratio:4 / 3;}
.post-media figcaption,
    .post-gallery__slide figcaption{font-size:9px;}
.post-gallery__arrow{width:42px;height:42px;}
.post-gallery__arrow--prev{left:10px;}
.post-gallery__arrow--next{right:10px;}
.post-feed-card__footer{flex-wrap:wrap;}
.post-action--share{margin-left:0;}
.article-header{padding:55px 0 52px;}
.article-header h1{font-size:clamp(39px, 11.5vw, 53px);}
.article-header__inner > p{font-size:15px;}
.article-byline{text-align:left;}
.article-media-wrap{width:min(calc(100% - 28px), var(--container));margin-top:35px;}
.article-media-wrap .post-media,
    .article-media-wrap .post-gallery,
    .article-media-wrap .post-video{border-radius:17px;}
.article-layout{padding-top:52px;padding-bottom:75px;}
.article-content > p,
    .article-content > ul,
    .article-content > ol,
    .article-content > blockquote{font-size:17px;}
.article-content h2{margin-top:37px;font-size:32px;}
.article-content blockquote{padding:19px 20px;font-size:19px;}
.article-actions{display:grid;}
.article-actions .button{width:100%;}
.article-navigation{grid-template-columns:1fr;}
.article-navigation__next{grid-column:1;text-align:left;}
.article-aside{padding:26px 23px;}
.error-page h1{font-size:48px;}
.auth-page{min-height:auto;}
.auth-layout{gap:38px;}
.auth-intro h1{font-size:clamp(45px, 13vw, 58px);}
.auth-card{padding:29px 22px;}
.auth-card h2{font-size:37px;}
.selected-plan{padding:18px 20px;}
.dashboard-panel-card,
    .dashboard-panel-card--wide{padding:24px 22px;}
.dashboard-panel-card--hero h1{font-size:40px;}
.dashboard-panel-card--wide h2{font-size:34px;}
.dashboard-section-head h2{font-size:31px;}
.dashboard-module-card h3{font-size:28px;}
.dashboard-summary-grid{grid-template-columns:1fr;}
.dashboard-quick-grid{grid-template-columns:1fr;}
.patient-chat-page{min-height:580px;}
.patient-chat-page__header{grid-template-columns:auto 1fr;}
.patient-chat-page__header em{display:none;}
.patient-chat-page__header--title-only{grid-template-columns:minmax(0, 1fr);}
.patient-chat-page__header--title-only h2{font-size:clamp(28px, 8vw, 42px);}
.patient-chat-message{max-width:90%;}
.patient-chat-page__actions{align-items:stretch;flex-direction:column;}
.patient-chat-page__actions .button{width:100%;}
.dashboard-files-toolbar{align-items:flex-start;flex-direction:column;}
.dashboard-download-list li{align-items:start;flex-direction:column;}
.dashboard-download-list .button{width:100%;}}
@media (max-width: 420px){
.hero-photo{min-height:430px;height:430px;}
.hero-motto{font-size:19px;}
.transformation-compare{min-height:250px;}
.transformation-compare > figure,
    .transformation-compare img{min-height:245px;}
.transformation-result{width:66px;height:66px;flex-basis:66px;}
.contact-direct strong{font-size:12px;}
.about-visual{min-height:440px;}
.credentials-panel__item{min-height:50px;padding:8px 6px;}
.credentials-panel__item strong{font-size:8px;line-height:1.2;}}
/* Na szerokim ekranie każda główna sekcja tworzy jeden pełny widok pod topbarem. */
@media (min-width: 941px){
.hero.section,
    .transformations.section,
    .offer.section,
    .about.section,
    .contact.section{height:calc(100svh - var(--header-height));min-height:720px;padding-top:32px;padding-bottom:32px;overflow:hidden;}
.hero h1{margin-bottom:24px;font-size:clamp(46px, 3.8vw, 58px);}
.hero-lead{margin-bottom:24px;font-size:18px;}
.hero .check-list{margin-bottom:30px;gap:11px;}
.hero-actions{gap:14px;}
.hero-actions .button{min-height:54px;padding-right:25px;padding-left:25px;}
.hero-photo{min-height:min(640px, calc(100svh - var(--header-height) - 120px));height:min(640px, calc(100svh - var(--header-height) - 120px));}
.offer .section-heading--center{margin-bottom:18px;}
.offer .section-heading h2{font-size:clamp(38px, 2.8vw, 46px);}
.offer-configurator{margin-bottom:18px;}
.offer-choice legend{margin-bottom:7px;}
.offer-segmented button{min-height:35px;padding-top:6px;padding-bottom:6px;}
.pricing-grid{gap:18px;}
.price-card{padding:18px 22px;}
.price-label{margin-bottom:4px;}
.price-card h3{margin-bottom:6px;font-size:27px;}
.price strong{font-size:34px;}
.price-equivalent{margin-bottom:6px;}
.price-intro{min-height:42px;margin-bottom:10px;line-height:1.45;}
.price-card ul{margin-bottom:12px;padding-top:10px;gap:5px;}
.price-card li{font-size:12px;line-height:1.35;}
.price-card .button{min-height:44px;padding-top:10px;padding-bottom:10px;}
.reassurance{margin-top:14px;padding:9px 17px;gap:12px;}
.reassurance__icon{width:30px;height:30px;flex-basis:30px;}
.about-grid{gap:72px;}
.about-visual{min-height:570px;}
.about .eyebrow{margin-bottom:10px;}
.about h2{margin-bottom:14px;font-size:clamp(44px, 3.5vw, 54px);}
.about-copy > p:not(.eyebrow){margin-bottom:12px;line-height:1.5;}
.about-lead{font-size:16px;}
.values-list{margin:16px 0;}
.values-list > div{padding:9px 0;}
.values-list p{line-height:1.4;}
.contact h2{margin-bottom:16px;font-size:clamp(44px, 3.5vw, 54px);}
.contact-copy > p:not(.eyebrow):not(.contact-time){margin-bottom:14px;}
.contact-direct{margin-top:22px;gap:6px;}
.contact-direct a{padding:8px 0;}
.contact-time{margin-top:14px;}
.contact-form-wrap{padding:28px 32px;}
.contact-form-wrap form{gap:12px;}
.contact-form-wrap textarea{min-height:96px;}}
/* Elastyczne bloki wpisów */
.post-summary-blocks{display:grid;}
.post-summary-blocks > .post-block--paragraph,
.post-summary-blocks > .post-block--list,
.post-summary-blocks > .post-block--quote,
.post-summary-blocks > .post-block--heading,
.post-summary-blocks > .post-block--subheading{margin-right:24px;margin-left:24px;}
.post-summary-blocks > .post-block--paragraph{margin-top:0;margin-bottom:22px;color:#1f1b1d;font-size:clamp(18px,1.4vw,21px);line-height:1.72;}
.post-summary-blocks > .post-block--heading{margin-top:5px;margin-bottom:12px;font-size:29px;}
.post-summary-blocks > .post-block--subheading{margin-top:4px;margin-bottom:10px;font-size:22px;}
.post-summary-blocks > .post-block--list{margin-top:0;margin-bottom:22px;padding-left:45px;color:#1f1b1d;font-size:clamp(17px,1.3vw,20px);line-height:1.7;}
.post-summary-blocks > .post-block--quote{margin-top:0;margin-bottom:22px;padding:17px 20px;border-left:4px solid var(--green-600);background:var(--green-50);color:var(--green-900);font-family:Georgia, "Times New Roman", serif;font-size:17px;}
.post-summary-blocks .post-block-media + .post-block-media{border-top:1px solid rgba(255,255,255,.12);}
.post-block a{color:var(--green-700);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;}
.post-block--subheading{margin:34px 0 15px;color:var(--ink);font-size:27px;}
.post-block-divider{margin:42px 0;border:0;border-top:1px solid var(--line);}
.post-local-video{margin:0;overflow:hidden;background:var(--green-950);}
.post-local-video video{width:100%;max-height:720px;display:block;background:#000;}
.post-local-video figcaption{padding:10px 13px;background:var(--green-950);color:rgba(255,255,255,.84);font-size:10px;}
.article-content .post-block-media{margin-top:34px;margin-bottom:34px;overflow:hidden;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);}
.article-content .post-block-width--normal{width:min(100%, 650px);}
.article-content .post-block-width--wide,
.article-content .post-block-width--full{width:100%;}
.article-content .post-video{aspect-ratio:16 / 9;}
.article-content .post-local-video{background:#000;}
.article-content h3.post-block--subheading{font-family:Georgia, "Times New Roman", serif;}
@media (max-width: 680px){
.post-summary-blocks > .post-block--paragraph,
    .post-summary-blocks > .post-block--list,
    .post-summary-blocks > .post-block--quote,
    .post-summary-blocks > .post-block--heading,
    .post-summary-blocks > .post-block--subheading{margin-right:18px;margin-left:18px;}
.article-content .post-block-media{border-radius:17px;}}

/* ===== 21-post-article.css ===== */
/* Etap VI: media, boczne panele i akcje wpisów jako jeden spójny układ */
.posts-sidebar{height:auto;display:block;}
.posts-sidebar__panel{overflow:hidden;border:1px solid var(--line);border-radius:22px;background:var(--white);box-shadow:var(--shadow-sm);}
.posts-sidebar-nav,
.posts-topic-card,
.posts-offer-card{border:0;border-radius:0;background:transparent;box-shadow:none;}
.posts-sidebar-nav,
.posts-topic-card{border-bottom:1px solid var(--line);}
.posts-topic-card{background:linear-gradient(145deg, #fff, #fbf5f8);}
.posts-offer-card{background:linear-gradient(145deg, #fff, var(--cream));}
.posts-offer-card:hover{border-color:transparent;box-shadow:none;}
/* Media w skrócie zachowują dokładnie rytm istniejących kafelków. */
.post-summary-blocks{min-width:0;overflow:hidden;}
.post-summary-blocks > .post-block-media{width:100%;max-width:none;margin:0;border-radius:0;box-shadow:none;}
.post-summary-blocks > .post-block-media + .post-block--paragraph,
.post-summary-blocks > .post-block-media + .post-block--heading1,
.post-summary-blocks > .post-block-media + .post-block--heading,
.post-summary-blocks > .post-block-media + .post-block--subheading,
.post-summary-blocks > .post-block-media + .post-block--list,
.post-summary-blocks > .post-block-media + .post-block--quote{margin-top:22px;}
.post-media img,
.post-gallery__slide img,
.post-local-video video{width:100%;aspect-ratio:16 / 9;display:block;object-fit:cover;}
.post-local-video{position:relative;}
.post-local-video video{max-height:none;background:#111;object-fit:contain;}
.post-local-video figcaption{position:absolute;right:14px;bottom:14px;left:14px;padding:9px 12px;border-radius:10px;background:rgba(29,18,25,.78);color:rgba(255,255,255,.9);backdrop-filter:blur(8px);font-size:10px;}
/* H1 dostępny wewnątrz treści. */
.post-summary-blocks > .post-block--heading1{margin:8px 24px 14px;color:var(--ink);font-family:Georgia, "Times New Roman", serif;font-size:clamp(34px, 4vw, 45px);font-weight:600;line-height:1.08;}
.article-content h1.post-block--heading1{margin:52px 0 22px;color:var(--ink);font-family:Georgia, "Times New Roman", serif;font-size:clamp(43px, 5vw, 57px);font-weight:600;line-height:1.08;}
/* Multimedia w artykule nie wyglądają jak osobny, doklejony czarny kafel. */
.article-content .post-block-media{width:100%;max-width:none;margin:36px 0;overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#171216;box-shadow:0 12px 34px rgba(81,36,59,.09);}
.article-content .post-block-width--normal{width:min(100%, 650px);}
.article-content .post-block-width--wide,
.article-content .post-block-width--full{width:100%;}
/* Stopka jest zawsze osobnym pasem pod materiałem, więc przyciski nie nachodzą na obraz ani film. */
.post-feed-card__footer{position:relative;z-index:5;clear:both;min-height:62px;margin:0;padding:10px 15px;border-top:1px solid var(--line);flex-wrap:wrap;background:var(--white);}
.post-action{position:relative;z-index:1;}
.post-action--share{margin-left:auto;}
/* Sidebar artykułu jako integralna szyna, a nie osobna karta doklejona do tekstu. */
.article-layout{grid-template-columns:minmax(0, 760px) minmax(270px, 310px);justify-content:space-between;gap:clamp(46px, 6vw, 72px);}
.article-aside{top:calc(var(--header-height) + 28px);padding:4px 0 4px 30px;border:0;border-left:1px solid var(--line);border-radius:0;background:transparent;}
.article-aside__inner{display:grid;gap:0;}
.article-aside__author{margin-bottom:27px;padding-bottom:22px;}
.article-aside .eyebrow{margin-bottom:14px;}
.article-aside h2{margin-top:0;}
.article-aside .button{margin-top:2px;}
.article-aside__back{margin-top:18px;padding-top:17px;border-top:1px solid var(--line);color:var(--green-700);font-size:10px;font-weight:850;}
.article-aside__back:hover{color:var(--green-900);}
@media (max-width: 980px){
.posts-sidebar__panel{display:grid;grid-template-columns:minmax(0, 1fr) minmax(260px, .75fr);}
.posts-sidebar-nav{border-right:1px solid var(--line);border-bottom:0;}
.posts-topic-card{border-bottom:0;}
.posts-offer-card{grid-column:1 / -1;border-top:1px solid var(--line);}
.article-aside{max-width:640px;padding:27px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--green-50);}}
@media (max-width: 700px){
.posts-sidebar__panel{display:block;}
.posts-sidebar-nav{border-right:0;border-bottom:1px solid var(--line);}
.posts-topic-card{border-bottom:1px solid var(--line);}
.posts-offer-card{border-top:0;}
.post-summary-blocks > .post-block--heading1{margin-right:18px;margin-left:18px;font-size:35px;}
.article-content h1.post-block--heading1{font-size:39px;}
.post-action--share{margin-left:0;}}
.article-content .post-block-width--normal{width:100%;}
@media (max-width: 1100px){
.article-aside{position:static;max-width:640px;padding:27px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--green-50);}}
/* pojedynczy post bez prawego panelu, cała szerokość dla artykułu. */
.article-layout--single{grid-template-columns:minmax(0, 1fr) !important;gap:0 !important;}
.article-layout--single .article-main-column{width:100%;max-width:none;}
.article-layout--single .article-content{max-width:none;}
.article-layout--single .article-content > p,
.article-layout--single .article-content > ul,
.article-layout--single .article-content > ol,
.article-layout--single .article-content > blockquote{max-width:980px;}
.article-layout--single .article-content .post-block-width--normal,
.article-layout--single .article-content .post-block-width--wide,
.article-layout--single .article-content .post-block-width--full,
.article-layout--single .article-note,
.article-layout--single .article-actions,
.article-layout--single .article-navigation,
.article-layout--single .article-bottom-cta,
.article-layout--single .article-bottom-back{width:100%;max-width:none;}
.article-bottom-cta{margin-top:26px;padding:clamp(26px, 4vw, 38px);border:1px solid var(--line);border-radius:var(--radius-md);background:linear-gradient(135deg, var(--green-50), #fff);display:grid;grid-template-columns:minmax(0, 1fr) auto;align-items:center;gap:28px;box-shadow:var(--shadow-sm);}
.article-bottom-cta .eyebrow{margin-bottom:12px;}
.article-bottom-cta h2{margin:0 0 10px;max-width:680px;color:var(--ink);font-size:clamp(30px, 4vw, 44px);line-height:1.04;}
.article-bottom-cta p:not(.eyebrow){margin:0;max-width:760px;color:var(--muted);font-size:16px;line-height:1.65;}
.article-bottom-cta .button{min-width:210px;justify-content:center;}
.article-bottom-back{display:inline-flex;margin-top:18px;color:var(--green-700);font-size:11px;font-weight:850;}
.article-bottom-back:hover{color:var(--green-900);}
@media (max-width: 760px){
.article-bottom-cta{grid-template-columns:1fr;align-items:stretch;}
.article-bottom-cta .button{width:100%;}}
/* Etap VII: jedna karuzela może zawierać zdjęcia i lokalne filmy w dowolnej kolejności. */
.post-media-carousel .post-gallery__slide{background:#171216;}
.post-media-carousel .post-gallery__slide > img,
.post-media-carousel .post-gallery__slide > video,
.post-media-carousel .post-gallery__slide > iframe{width:100%;aspect-ratio:16 / 9;display:block;background:#171216;}
.post-media-carousel .post-gallery__slide > img{object-fit:cover;}
.post-media-carousel .post-gallery__slide > video{object-fit:contain;}
.post-media-carousel .post-gallery__slide > iframe{border:0;object-fit:contain;}
.post-media-carousel .post-gallery__slide figcaption{position:absolute;z-index:2;right:14px;bottom:14px;left:14px;padding:9px 12px;border-radius:10px;background:rgba(29,18,25,.78);color:rgba(255,255,255,.9);backdrop-filter:blur(8px);}
@media (max-width: 680px){
.post-media-carousel .post-gallery__slide > img,
    .post-media-carousel .post-gallery__slide > video,
    .post-media-carousel .post-gallery__slide > iframe{aspect-ratio:4 / 3;}}
/* Etap VIII: szerokość wybrana w edytorze jest widoczna również po publikacji. */
.post-summary-blocks > .post-block-media.post-block-width--normal{width:min(calc(100% - 48px), 520px);margin-right:auto;margin-left:auto;border-radius:18px;}
.post-summary-blocks > .post-block-media.post-block-width--wide{width:calc(100% - 48px);margin-right:auto;margin-left:auto;border-radius:18px;}
.post-summary-blocks > .post-block-media.post-block-width--full{width:100%;margin-right:0;margin-left:0;border-radius:0;}
.article-content .post-block-width--normal{width:min(100%, 560px);margin-right:auto;margin-left:auto;}
.article-content .post-block-width--wide{width:min(100%, 650px);margin-right:auto;margin-left:auto;}
.article-content .post-block-width--full{width:100%;margin-right:0;margin-left:0;}
@media (max-width: 680px){
.post-summary-blocks > .post-block-media.post-block-width--normal,
    .post-summary-blocks > .post-block-media.post-block-width--wide{width:calc(100% - 36px);}
.article-content .post-block-width--normal,
    .article-content .post-block-width--wide,
    .article-content .post-block-width--full{width:100%;}}
/* Etap IX: kompaktowy, uporządkowany nagłówek pełnego artykułu */
.article-header{padding:38px 0 44px;text-align:left;}
.article-header__inner{max-width:1040px;}
.article-header .back-link{width:max-content;margin:0 0 26px;}
.article-header__meta-row{margin-bottom:24px;display:flex;align-items:center;justify-content:space-between;gap:24px;}
.article-header h1{max-width:850px;margin:0 0 16px;font-size:clamp(36px, 4vw, 52px);line-height:1.04;}
.article-header__inner > p{max-width:760px;margin:0;font-size:15px;line-height:1.65;}
.article-header .article-byline{margin-left:auto;flex:0 0 auto;}
.article-header .article-byline > img{width:40px;height:40px;}
.article-header .article-byline strong{font-size:11px;}
.article-header .post-meta--large{margin-top:2px;}
.article-aside__inner > .eyebrow:first-child{margin-top:0;}
@media (max-width: 760px){
.article-header{padding:30px 0 34px;}
.article-header .back-link{margin-bottom:20px;}
.article-header__meta-row{margin-bottom:21px;align-items:flex-start;flex-direction:column;gap:15px;}
.article-header .article-byline{margin-left:0;}
.article-header h1{margin-bottom:13px;font-size:clamp(34px, 10.5vw, 47px);}
.article-header__inner > p{font-size:14px;}}
/* Etap X: osadzony YouTube zachowuje się jak zwykły slajd karuzeli. */
.post-media-carousel .post-gallery__slide--youtube{background:#000;}
.post-media-carousel .post-gallery__slide--youtube iframe{width:100%;aspect-ratio:16 / 9;display:block;border:0;background:#000;}
@media (max-width: 680px){
.post-media-carousel .post-gallery__slide--youtube iframe{aspect-ratio:4 / 3;}}
/* Wspólny wygląd klikalnych ikon mediów społecznościowych. */
.social-icon-links{display:inline-flex;align-items:center;flex-wrap:wrap;gap:7px;}
.social-icon-link{width:38px;height:38px;border:1px solid rgba(54, 104, 78, .16);border-radius:50%;display:inline-grid;place-items:center;background:rgba(245, 249, 246, .78);color:var(--green-700);text-decoration:none;transition:transform .18s ease, border-color .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease;}
.social-icon-link svg{width:19px;height:19px;display:block;}
.social-icon-link:hover,
.social-icon-link:focus-visible{transform:translateY(-2px);border-color:currentColor;background:#fff;box-shadow:0 7px 18px rgba(54, 104, 78, .12);outline:0;}
.social-icon-link--youtube:hover,
.social-icon-link--youtube:focus-visible{color:#e32636;}
.social-icon-link--instagram:hover,
.social-icon-link--instagram:focus-visible{color:#b73586;}
.social-icon-link--facebook:hover,
.social-icon-link--facebook:focus-visible{color:#1877f2;}
.social-icon-link--tiktok:hover,
.social-icon-link--tiktok:focus-visible{color:#171217;}
.social-icon-link--linkedin:hover,
.social-icon-link--linkedin:focus-visible{color:#0a66c2;}
.social-icon-link--pinterest:hover,
.social-icon-link--pinterest:focus-visible{color:#e60023;}
@media (max-width: 720px){
.social-icon-link{width:36px;height:36px;}}
/* Etap XXIII: social media pod zdjęciem jako dopasowany moduł, bez ingerencji w pełne hero zdjęcie. */
.hero-visual{margin-top:-18px;gap:12px;}
.hero-photo{min-height:640px;}
.home-social{width:100%;margin:0;padding:16px 18px;border:1px solid rgba(124, 41, 82, .13);border-radius:18px;display:grid;grid-template-columns:minmax(0, 1fr) auto;align-items:center;gap:14px;background:rgba(255,255,255,.78);box-shadow:0 12px 30px rgba(72, 35, 53, .06);backdrop-filter:blur(12px);}
.home-social__heading{display:grid;gap:0;}
.home-social__eyebrow{color:var(--accent);font-size:10px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;}
.home-social__icons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px;}
.home-social__icons .social-icon-link{width:38px;height:38px;background:#fff;}
.footer-social{margin-top:7px;display:flex;align-items:center;justify-content:flex-end;gap:8px;}
.footer-social > span{color:rgba(255,255,255,.48);font-size:7px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;}
.footer-social__icons{gap:5px;}
.footer-social__icons .social-icon-link{width:28px;height:28px;border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.07);color:rgba(255,255,255,.78);box-shadow:none;}
.footer-social__icons .social-icon-link svg{width:14px;height:14px;}
.footer-social__icons .social-icon-link:hover,
.footer-social__icons .social-icon-link:focus-visible{background:#fff;box-shadow:0 7px 18px rgba(0,0,0,.18);}
.article-actions{justify-content:flex-end;}
.article-actions--under-note{margin-top:18px;display:flex;width:100%;justify-content:space-between;align-items:center;gap:16px;}
.article-actions--under-note .article-bottom-back{width:auto;max-width:max-content;margin-top:0;flex:0 0 auto;}
.article-actions--under-note .button{margin-left:auto;flex:0 0 auto;}
@media (max-width: 640px){
.article-actions--under-note{align-items:stretch;flex-direction:column;}
.article-actions--under-note .button{width:100%;margin-left:0;justify-content:center;}}
@media (max-width: 860px){
.footer-social{justify-content:flex-start;}}
@media (max-width: 720px){
.home-social{width:100%;margin-left:0;justify-content:center;margin-top:18px;padding:16px;text-align:center;}
.home-social__heading{width:100%;}
.home-social__icons{justify-content:center;}}
/* Etap XIX: prostszy blok social media i wyrównanie ostatniego wpisu z sidebarem. */
@media (min-width: 981px){
.post-feed-card.is-last-visible{margin-bottom:0;}
.post-feed-card.is-last-visible .post-feed-card__footer{padding-bottom:calc(10px + var(--last-post-extra-space, 0px));}}
/* Etap XXIV: usunięcie szarego pasa z hero zdjęcia. */
.hero-motto{max-width:380px;text-shadow:0 3px 18px rgba(0, 0, 0, .42), 0 1px 6px rgba(0, 0, 0, .28);}
.hero-motto cite{color:rgba(255, 255, 255, .9);}
/* Etap XXV: zdjęcie hero wypełnia cały kontener bez pustego pasa. */
.hero-motto{z-index:3;}
/* Etap XXVI: zdjęcie i media społecznościowe jako jeden wspólny moduł. */
.hero-visual{gap:0;border-radius:28px;filter:drop-shadow(0 18px 36px rgba(54, 29, 42, .11));}
.hero-photo{border-radius:28px 28px 0 0;box-shadow:none;}
.home-social{position:relative;z-index:2;width:100%;margin:0;border-top:0;border-radius:0 0 28px 28px;background:rgba(255, 255, 255, .96);box-shadow:none;backdrop-filter:none;}
.home-social::before{content:"";position:absolute;top:0;right:18px;left:18px;height:1px;background:rgba(124, 41, 82, .10);}
@media (max-width: 720px){
.hero-visual{gap:0;border-radius:20px;}
.hero-photo{border-radius:20px 20px 0 0;}
.home-social{margin:0;border-radius:0 0 20px 20px;}}

/* ===== 22-post-sidebar.css ===== */
/* Etap XXX: czystsza stopka — bez sloganu, linki w 2 kolumnach, kontakt poziomo. */
.site-footer--compact{padding:0;background:#1d1219;color:rgba(255,255,255,.68);}
.footer-main{min-height:62px;padding-top:10px;padding-bottom:10px;display:grid;grid-template-columns:auto minmax(150px, .8fr) minmax(285px, 1.15fr) minmax(210px, .8fr) auto;align-items:center;gap:clamp(14px, 2vw, 28px);}
.footer-brand-block{min-width:0;display:flex;align-items:center;}
.footer-section-label{color:rgba(255,255,255,.48);font-size:7px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
.footer-nav{min-width:0;display:grid;grid-template-columns:repeat(2, max-content);grid-auto-rows:min-content;column-gap:22px;row-gap:6px;align-items:center;}
.footer-nav a,
.footer-contact-block a{width:fit-content;color:rgba(255,255,255,.82);font-size:9px;line-height:1.2;transition:color .18s ease, transform .18s ease;}
.footer-nav a:hover,
.footer-nav a:focus-visible,
.footer-contact-block a:hover,
.footer-contact-block a:focus-visible{color:#fff;transform:translateY(-1px);}
.footer-contact-block,
.footer-meta-block{min-width:0;display:grid;align-content:center;gap:4px;}
.footer-contact-block{display:flex;align-items:center;gap:12px;}
.footer-contact-block .footer-section-label{flex:0 0 auto;margin:0;}
.footer-contact-block__items{display:flex;align-items:center;flex-wrap:wrap;gap:8px;}
.footer-contact-block__items span,
.footer-meta-block span{color:rgba(255,255,255,.48);font-size:8px;line-height:1.2;}
.footer-meta-block{display:flex;align-items:center;flex-wrap:wrap;gap:10px;color:rgba(255,255,255,.48);font-size:7px;line-height:1.25;}
.footer-social-block{display:grid;grid-template-columns:auto auto;align-items:center;justify-content:end;gap:10px;min-width:0;}
.footer-social-block .footer-section-label{margin:0;color:rgba(255,255,255,.56);}
.footer-social-block .footer-social__icons{justify-content:flex-end;gap:6px;}
.footer-social-block .social-icon-link{width:28px;height:28px;border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.07);color:rgba(255,255,255,.8);box-shadow:none;}
.footer-social-block .social-icon-link svg{width:13px;height:13px;}
.footer-social-empty{color:rgba(255,255,255,.46);font-size:8px;}
@media (max-width: 1320px){
.footer-main{grid-template-columns:auto minmax(150px, .85fr) minmax(240px, 1fr) minmax(240px, 1fr);gap:14px 20px;}
.footer-meta-block{grid-column:1 / -2;}
.footer-social-block{justify-content:start;}}
@media (max-width: 1120px){
.footer-main{grid-template-columns:1fr 1fr;align-items:start;}
.footer-brand-block{grid-column:1;}
.footer-nav{grid-column:2;justify-content:start;}
.footer-contact-block{grid-column:1 / -1;}
.footer-meta-block{grid-column:1 / -1;}
.footer-social-block{grid-column:1 / -1;justify-content:start;}}
@media (max-width: 760px){
.footer-main{min-height:0;padding-top:14px;padding-bottom:14px;grid-template-columns:1fr;gap:12px;align-items:start;}
.footer-brand-block,
    .footer-nav,
    .footer-contact-block,
    .footer-meta-block,
    .footer-social-block{grid-column:1;}
.footer-nav{grid-template-columns:repeat(2, max-content);}
.footer-contact-block,
    .footer-contact-block__items,
    .footer-meta-block,
    .footer-social-block{justify-content:flex-start;}
.footer-social-block{grid-template-columns:auto 1fr;}}
/* Etap XXVIII: bez sztucznego pustego miejsca pod listą postów. */
@media (max-width: 980px){
.posts-directory{padding-bottom:48px;}}
/* Etap XXXIV: zintegrowany sidebar znowu wypełnia wysokość widoku. */
@media (min-width: 981px){
.posts-sidebar{height:calc(100svh - var(--header-height) - 64px);min-height:610px;max-height:760px;display:block;}
.posts-sidebar__panel{height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0, 1fr) minmax(0, 1fr);}
.posts-sidebar-nav,
    .posts-topic-card,
    .posts-offer-card{min-height:0;}
.posts-topic-card,
    .posts-offer-card{justify-content:flex-start;}
.posts-topic-card .button,
    .posts-offer-card .button{margin-top:auto;}}
@media (max-width: 980px){
.posts-sidebar{height:auto;min-height:0;max-height:none;}
.posts-sidebar__panel{height:auto;}}
/* Etap XXXV: osobna strona propozycji tematów. */
.topic-proposal{min-height:calc(100svh - var(--header-height));padding-top:clamp(28px, 3vw, 46px);padding-bottom:clamp(54px, 6vw, 82px);background:radial-gradient(circle at 14% 12%, rgba(124, 41, 82, .08), transparent 32%),
        linear-gradient(180deg, #fbf8f9 0%, #fff 62%);}
.topic-proposal__grid{display:grid;grid-template-columns:minmax(0, .82fr) minmax(520px, 1.18fr);align-items:center;gap:clamp(42px, 5vw, 76px);}
.topic-proposal__copy h1{max-width:650px;margin:0 0 24px;color:var(--ink);font-size:clamp(45px, 4.4vw, 68px);line-height:1.02;letter-spacing:-.035em;}
.topic-proposal__copy > p:not(.eyebrow){max-width:650px;margin:0 0 16px;color:var(--muted);font-size:18px;line-height:1.75;}
.topic-proposal__copy > p:not(.eyebrow):last-of-type{margin-bottom:0;}
.topic-proposal__notes{margin:26px 0 24px;border-top:1px solid rgba(124, 41, 82, .14);display:grid;}
.topic-proposal__notes > div{padding:13px 0;border-bottom:1px solid rgba(124, 41, 82, .14);display:grid;grid-template-columns:minmax(170px, .72fr) minmax(0, 1.28fr);gap:22px;}
.topic-proposal__notes strong{color:var(--ink);font-size:13px;}
.topic-proposal__notes span{color:var(--muted);font-size:13px;line-height:1.55;}
.topic-proposal__form{padding:clamp(28px, 4vw, 46px);border:1px solid rgba(124, 41, 82, .12);box-shadow:0 32px 90px rgba(62, 28, 45, .14);}
.topic-proposal__form label small{color:var(--muted);font-size:10px;font-weight:600;}
.topic-proposal__form textarea{min-height:210px;}
.topic-proposal__counter{margin:-8px 0 0;color:#8b8187;font-size:10px;text-align:right;}
@media (max-width: 980px){
.topic-proposal__grid{grid-template-columns:1fr;gap:44px;}
.topic-proposal__copy{max-width:760px;}}
@media (max-width: 620px){
.topic-proposal{padding-top:24px;}
.topic-proposal__copy h1{font-size:clamp(39px, 12vw, 52px);}
.topic-proposal__copy > p:not(.eyebrow){font-size:16px;}
.topic-proposal__notes > div{grid-template-columns:1fr;gap:5px;}
.topic-proposal__form{padding:24px 18px;}}
/* Etap XXXVI: pełny, stabilny sidebar postów z równym odstępem od krawędzi ekranu. */
:root{--runtime-header-height:var(--header-height);--posts-sidebar-viewport-gap:18px;--posts-sidebar-total-gap:36px;}
.posts-social-card{padding:14px 20px;display:flex;align-items:center;justify-content:space-between;gap:14px;background:linear-gradient(145deg, #fff, #faf6f8);}
.posts-social-card > div:first-child{min-width:0;display:grid;gap:1px;}
.posts-social-card > div:first-child > span{color:var(--green-700);font-size:8px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
.posts-social-card h2{margin:0;color:var(--ink);font-size:21px;line-height:1.1;}
.posts-social-card__icons{flex:0 0 auto;justify-content:flex-end;gap:6px;}
.posts-social-card__icons .social-icon-link{width:34px;height:34px;background:#fff;box-shadow:none;}
.posts-social-card__icons .social-icon-link svg{width:15px;height:15px;}
.posts-social-card__fallback{color:var(--green-700);font-size:10px;font-weight:850;}
@media (min-width: 981px){
.posts-directory{padding-top:var(--posts-sidebar-viewport-gap);padding-bottom:var(--posts-sidebar-viewport-gap);}
.posts-sidebar{position:sticky !important;z-index:12;top:calc(var(--runtime-header-height) + var(--posts-sidebar-viewport-gap)) !important;height:calc(100dvh - var(--runtime-header-height) - var(--posts-sidebar-total-gap)) !important;min-height:0 !important;max-height:none !important;align-self:start;display:block !important;}
.posts-sidebar__panel{height:100% !important;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;display:grid !important;grid-template-rows:auto auto auto auto !important;align-content:start;gap:0;}
.posts-sidebar-nav,
    .posts-topic-card,
    .posts-offer-card,
    .posts-social-card{min-height:0;}
.posts-sidebar-nav{padding:18px 20px 16px;}
.posts-sidebar-nav h2{margin:2px 0 12px;font-size:25px;}
.posts-sidebar-nav__buttons{gap:6px;}
.posts-sidebar-nav button{min-height:40px;padding:9px 13px;border-radius:12px;font-size:11.5px;line-height:1.2;}
.posts-topic-card,
    .posts-offer-card{padding:18px 21px;justify-content:flex-start;}
.posts-topic-card h2{margin:2px 0 7px;font-size:24px;line-height:1.1;}
.posts-topic-card p{margin-bottom:12px;font-size:11.5px;line-height:1.55;}
.posts-offer-card{border-bottom:1px solid var(--line) !important;}
.posts-offer-card h2{margin:2px 0 7px;font-size:20px;}
.posts-offer-card p{margin-bottom:11px;font-size:11px;line-height:1.52;}
.posts-topic-card .button,
    .posts-offer-card .button{min-height:42px;margin-top:10px;padding-top:9px;padding-bottom:9px;}}
@media (max-width: 980px){
.posts-sidebar{position:static;height:auto !important;min-height:0;max-height:none;}
.posts-sidebar__panel{height:auto !important;display:block !important;}
.posts-offer-card{border-bottom:1px solid var(--line) !important;}}
/* Etap XXXVII: pełniejsze opisy i prostszy kafel mediów w sidebarze. */
.posts-social-card > h2{margin:0;color:var(--ink);font-size:21px;line-height:1.1;}
@media (min-width: 981px){
.posts-sidebar__panel{grid-template-rows:auto auto auto auto !important;align-content:start;}
.posts-topic-card p,
    .posts-offer-card p{max-width:100%;color:#746e74;font-size:11.5px;line-height:1.58;}
.posts-topic-card p{margin-bottom:12px;}
.posts-offer-card p{margin-bottom:11px;}
.posts-social-card{min-height:64px;padding-top:13px;padding-bottom:13px;margin-top:0;}}
/* Etap XXXVIII: wartościowa sekcja obok formularza propozycji tematów. */
.topic-proposal__notes strong{line-height:1.45;}
.topic-proposal__contact-line{display:flex;align-items:center;flex-wrap:wrap;gap:8px;}
.topic-proposal__contact-line a{color:var(--accent);font-weight:700;}
.topic-proposal__contact-line a:hover,
.topic-proposal__contact-line a:focus-visible{color:var(--ink);}
/* Etap XXXIX: krótsza lewa kolumna formularza propozycji tematów. */
.topic-proposal__notes{margin-top:26px;margin-bottom:24px;}
.topic-proposal__notes > div{padding-top:13px;padding-bottom:13px;}
/* Etap XL: pełniejsze wykorzystanie wysokości sidebara przez większą typografię. */
@media (min-width: 981px){
.posts-sidebar__panel{grid-template-rows:auto minmax(0, 1fr) minmax(0, 1.04fr) auto !important;}
.posts-sidebar-nav > span,
    .posts-topic-card__label,
    .posts-offer-card > span{font-size:8.5px;}
.posts-sidebar-nav h2{font-size:27px;line-height:1.08;}
.posts-sidebar-nav button{font-size:11.5px;line-height:1.25;}
.posts-topic-card,
    .posts-offer-card{padding:17px 21px;}
.posts-topic-card h2{margin:3px 0 8px;font-size:26px;line-height:1.08;}
.posts-topic-card p{margin-bottom:14px;font-size:13px;line-height:1.66;}
.posts-offer-card h2{margin:3px 0 8px;font-size:22.5px;line-height:1.12;}
.posts-offer-card p{margin-bottom:13px;font-size:12.5px;line-height:1.64;}
.posts-topic-card .button,
    .posts-offer-card .button{min-height:42px;font-size:13px;}
.posts-social-card h2{font-size:23px;}}
@media (min-width: 981px) and (max-height: 760px){
.posts-topic-card p{font-size:12px;line-height:1.52;}
.posts-offer-card p{font-size:11.5px;line-height:1.5;}
.posts-topic-card h2{font-size:24px;}
.posts-offer-card h2{font-size:21px;}}
/* Etap XLI: umiarkowana typografia sidebara bez nachodzenia sekcji. */
@media (min-width: 981px){
.posts-sidebar__panel{grid-template-rows:auto minmax(205px, .98fr) minmax(220px, 1.02fr) auto !important;}
.posts-topic-card,
    .posts-offer-card{min-height:0;padding:15px 21px;overflow:hidden;}
.posts-topic-card h2{margin:2px 0 7px;font-size:24.5px;line-height:1.09;}
.posts-topic-card p{margin-bottom:11px;font-size:12.25px;line-height:1.55;}
.posts-offer-card h2{margin:2px 0 7px;font-size:21px;line-height:1.12;}
.posts-offer-card p{margin-bottom:10px;font-size:11.6px;line-height:1.52;}
.posts-topic-card .button,
    .posts-offer-card .button{flex:0 0 auto;min-height:40px;padding-top:8px;padding-bottom:8px;font-size:12.25px;}
.posts-social-card{position:relative;z-index:2;}}
@media (min-width: 981px) and (max-height: 820px){
.posts-sidebar__panel{grid-template-rows:auto minmax(190px, .97fr) minmax(205px, 1.03fr) auto !important;}
.posts-topic-card,
    .posts-offer-card{padding-top:13px;padding-bottom:13px;}
.posts-topic-card p{font-size:11.6px;line-height:1.48;}
.posts-offer-card p{font-size:11px;line-height:1.46;}}
/* Etap XLII: wartościowe wypełnienie kafla propozycji tematu. */
.posts-topic-card__examples{margin:2px 0 12px;padding:0;display:grid;gap:6px;list-style:none;}
.posts-topic-card__examples li{position:relative;padding-left:17px;color:#5f585e;font-size:10.5px;font-weight:750;line-height:1.35;}
.posts-topic-card__examples li::before{content:"→";position:absolute;left:0;top:0;color:var(--accent);font-weight:900;}
@media (min-width: 981px){
.posts-topic-card__examples{margin-top:auto;}
.posts-topic-card .button{margin-top:0;}}
@media (min-width: 981px) and (max-height: 760px){
.posts-topic-card__examples{gap:4px;margin-bottom:8px;}
.posts-topic-card__examples li{font-size:9.5px;}}
/* Etap XLIII: bez listy-zapychacza i bez ucinania przycisku. */
.posts-topic-card__examples{display:none !important;}
@media (min-width: 981px){
.posts-sidebar__panel{grid-template-rows:auto minmax(200px, .98fr) minmax(220px, 1.02fr) auto !important;}
.posts-topic-card{overflow:visible;justify-content:flex-start;}
.posts-topic-card p{margin-bottom:14px;font-size:12px;line-height:1.58;}
.posts-topic-card .button{margin-top:auto;flex:0 0 auto;}}
@media (min-width: 981px) and (max-height: 760px){
.posts-sidebar__panel{grid-template-rows:auto minmax(185px, .95fr) minmax(205px, 1.05fr) auto !important;}
.posts-topic-card p{font-size:11.25px;line-height:1.48;}}
/* Etap XLIV: precyzyjny rytm tekstu w środkowych kaflach sidebara. */
@media (min-width: 981px){
.posts-topic-card p,
    .posts-offer-card p{text-wrap:pretty;hyphens:auto;}
.posts-topic-card p{margin-top:0;margin-bottom:10px;font-size:11.8px;line-height:1.66;}
.posts-offer-card p{margin-top:0;margin-bottom:9px;font-size:11.35px;line-height:1.59;}
.posts-topic-card h2{margin-bottom:6px;}
.posts-offer-card h2{margin-bottom:6px;}}
@media (min-width: 981px) and (max-height: 780px){
.posts-topic-card p{font-size:11.25px;line-height:1.56;}
.posts-offer-card p{font-size:10.9px;line-height:1.52;}}
/* Etap XLV: zwarte grupowanie tekstu i przycisków w środkowych kaflach sidebara. */
@media (min-width: 981px){
.posts-topic-card,
    .posts-offer-card{justify-content:center !important;}
.posts-topic-card .button,
    .posts-offer-card .button{margin-top:16px !important;}
.posts-topic-card p,
    .posts-offer-card p{margin-bottom:0 !important;}}
@media (min-width: 981px) and (max-height: 780px){
.posts-topic-card,
    .posts-offer-card{justify-content:flex-start !important;}
.posts-topic-card .button,
    .posts-offer-card .button{margin-top:11px !important;}}

/* Etap XLVI: finalny kompaktowy sidebar postów — większa typografia, bez sztucznego rozciągania sekcji. */
@media (min-width: 981px){
    .posts-sidebar{
        height:auto !important;
        max-height:calc(100dvh - var(--runtime-header-height) - var(--posts-sidebar-total-gap)) !important;
    }
    .posts-sidebar__panel{
        height:auto !important;
        max-height:calc(100dvh - var(--runtime-header-height) - var(--posts-sidebar-total-gap)) !important;
        grid-template-rows:auto auto auto auto !important;
        align-content:start !important;
        overflow-y:auto;
    }
    .posts-sidebar-nav{
        padding:18px 20px 17px;
    }
    .posts-sidebar-nav > span,
    .posts-topic-card__label,
    .posts-offer-card > span{
        font-size:9.5px !important;
        line-height:1.25;
    }
    .posts-sidebar-nav h2{
        margin:3px 0 13px;
        font-size:28px;
        line-height:1.08;
    }
    .posts-sidebar-nav__buttons{
        gap:6px;
    }
    .posts-sidebar-nav button{
        min-height:42px !important;
        padding:10px 13px !important;
        font-size:13px !important;
        line-height:1.2 !important;
    }
    .posts-topic-card,
    .posts-offer-card{
        min-height:0 !important;
        padding:19px 21px !important;
        justify-content:flex-start !important;
        overflow:visible;
    }
    .posts-topic-card h2{
        margin:3px 0 8px !important;
        font-size:26px !important;
        line-height:1.08 !important;
    }
    .posts-topic-card p{
        margin:0 0 12px !important;
        font-size:13.5px !important;
        line-height:1.58 !important;
    }
    .posts-offer-card h2{
        margin:3px 0 8px !important;
        font-size:23px !important;
        line-height:1.12 !important;
    }
    .posts-offer-card p{
        margin:0 0 12px !important;
        font-size:13px !important;
        line-height:1.55 !important;
    }
    .posts-topic-card .button,
    .posts-offer-card .button{
        min-height:44px !important;
        margin-top:10px !important;
        padding-top:10px !important;
        padding-bottom:10px !important;
        font-size:13.5px !important;
    }
    .posts-social-card{
        min-height:66px;
        padding:14px 20px;
    }
    .posts-social-card h2,
    .posts-social-card > h2{
        font-size:23px;
    }
}

@media (min-width:981px) and (max-height:780px){
    .posts-sidebar-nav button{min-height:39px !important;padding-top:8px !important;padding-bottom:8px !important;}
    .posts-topic-card,
    .posts-offer-card{padding-top:16px !important;padding-bottom:16px !important;}
    .posts-topic-card p{font-size:12.5px !important;line-height:1.5 !important;}
    .posts-offer-card p{font-size:12px !important;line-height:1.48 !important;}
}

/* ===== 30-payments-chat.css ===== */
/* Płatności klienta */
.payment-nav-grid{display:grid;grid-template-columns:repeat(4, minmax(0, 1fr));gap:18px;}
.payment-nav-card{min-height:152px;padding:22px;border:1px solid var(--line);border-radius:22px;display:flex;flex-direction:column;align-items:flex-start;background:var(--white);box-shadow:var(--shadow-sm);transition:transform .18s ease, border-color .18s ease, background .18s ease;}
.payment-nav-card:hover, .payment-nav-card.is-active{transform:translateY(-2px);border-color:rgba(123, 45, 92, .3);background:var(--green-50);}
.payment-nav-card span{color:var(--green-800);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;}
.payment-nav-card strong{margin-top:16px;color:var(--ink);font-size:22px;}
.payment-nav-card small{margin-top:auto;color:var(--muted);font-size:13px;}
.payment-section-heading{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:22px;}
.payment-section-heading h2{margin:12px 0 0;font-size:38px;}
.payment-security-note{margin-bottom:24px;padding:17px 19px;border:1px solid rgba(169, 112, 36, .2);border-radius:18px;background:rgba(255, 244, 221, .72);}
.payment-security-note--success{border-color:rgba(52, 138, 98, .18);background:rgba(52, 138, 98, .08);}
.payment-security-note strong{display:block;margin-bottom:5px;color:var(--ink);}
.payment-security-note p{margin:0;color:var(--muted);font-size:14px;}
.payment-security-note code{color:var(--green-800);font-weight:800;}
.payment-empty-state{padding:44px 22px;border:1px dashed var(--line);border-radius:22px;text-align:center;background:var(--green-50);}
.payment-empty-state h3{margin:0 0 8px;font-size:28px;}
.payment-empty-state p{max-width:650px;margin:0 auto;color:var(--muted);}
.payment-card-list{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:18px;}
.payment-saved-card{min-height:230px;padding:24px;border-radius:24px;display:flex;flex-direction:column;background:linear-gradient(135deg, #43233a, #7b2d5c);color:#fff;box-shadow:0 20px 45px rgba(66, 28, 51, .22);}
.payment-saved-card__brand{font-size:14px;font-weight:900;letter-spacing:.12em;}
.payment-saved-card__number{margin:38px 0 24px;font-size:23px;font-weight:700;letter-spacing:.08em;}
.payment-saved-card__meta{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;}
.payment-saved-card__meta strong{padding:6px 9px;border-radius:999px;background:rgba(255,255,255,.14);}
.payment-saved-card__actions{margin-top:auto;padding-top:20px;display:flex;flex-wrap:wrap;gap:9px;}
.payment-saved-card__actions form{margin:0;padding:0;}
.payment-default-card, .payment-remove-card{border-color:rgba(255,255,255,.55);background:transparent;color:#fff;}
.payment-default-card:hover, .payment-remove-card:hover{background:rgba(255,255,255,.12);color:#fff;}
.payment-dialog{width:min(620px, calc(100% - 28px));max-height:calc(100vh - 24px);padding:0;border:1px solid var(--line);border-radius:28px;background:var(--white);box-shadow:0 30px 90px rgba(28, 16, 25, .32);overflow-x:hidden;overflow-y:auto;}
.payment-dialog::backdrop{background:rgba(20, 12, 18, .46);backdrop-filter:blur(4px);}
.payment-dialog__content{padding:34px 38px 38px;}
.payment-dialog__header{display:grid;gap:11px;margin-bottom:22px;}
.payment-dialog__title-row{display:flex;align-items:center;justify-content:space-between;gap:20px;}
.payment-dialog__title-row h2{min-width:0;margin:0;font-size:38px;line-height:1.08;}
.payment-dialog__close-row{margin:0;line-height:0;}
.payment-dialog__close-row button{position:relative;width:42px;height:42px;padding:0;border:1px solid var(--line);border-radius:50%;display:block;background:var(--white);color:var(--ink);font-size:0;line-height:0;cursor:pointer;transition:border-color .18s ease, background .18s ease, transform .18s ease;}
.payment-dialog__close-row button::before,.payment-dialog__close-row button::after{content:'';position:absolute;left:50%;top:50%;width:15px;height:1.6px;border-radius:999px;background:currentColor;transform-origin:center;}
.payment-dialog__close-row button::before{transform:translate(-50%,-50%) rotate(45deg);}
.payment-dialog__close-row button::after{transform:translate(-50%,-50%) rotate(-45deg);}
.payment-dialog__close-row button:hover{border-color:rgba(123, 45, 92, .35);background:var(--green-50);transform:scale(1.03);}
.payment-dialog__status{margin:0 0 12px;color:var(--green-800);font-size:13px;font-weight:700;}
.payment-dialog__status:empty{display:none;}
.payment-dialog__status.is-error{color:#982e3b;}
.payment-account-cards__heading strong{display:block;color:var(--ink);font-size:15px;}
.payment-account-cards__heading span{display:block;margin-top:3px;color:var(--muted);font-size:12px;line-height:1.45;}
.payment-account-card button:hover:not(:disabled){border-color:rgba(123,45,92,.4);box-shadow:0 8px 20px rgba(62,35,53,.09);transform:translateY(-1px);}
.payment-account-card button:disabled{cursor:default;opacity:1;}
.payment-account-card.is-selected small{color:var(--green-800);font-weight:800;}
.payment-form-divider::before, .payment-form-divider::after{content:'';height:1px;flex:1;background:var(--line);}
.payment-memory-toggle{margin:0 0 18px;padding:14px 15px;border:1px solid var(--line);border-radius:15px;display:grid;grid-template-columns:auto 1fr;align-items:start;gap:11px;background:var(--white);cursor:pointer;}
.payment-memory-toggle input{margin-top:4px;}
.payment-memory-toggle strong{display:block;color:var(--ink);font-size:13px;}
.payment-memory-toggle small{display:block;margin-top:3px;color:var(--muted);font-size:11px;line-height:1.45;}
.payment-card-fields{display:grid;gap:15px;}
.payment-card-fields__row{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:15px;}
.payment-card-field{display:grid;gap:8px;color:var(--ink);font-size:13px;font-weight:800;}
.payment-stripe-field-wrap{position:relative;min-height:50px;border:1px solid var(--line);border-radius:14px;background:var(--white);box-shadow:0 1px 2px rgba(28, 16, 25, .04);transition:border-color .18s ease, box-shadow .18s ease;overflow:hidden;}
.payment-stripe-field-wrap:focus-within{border-color:rgba(123, 45, 92, .62);box-shadow:0 0 0 3px rgba(123, 45, 92, .1);}
.payment-stripe-field{position:relative;z-index:2;min-height:50px;padding:15px 14px;}
.payment-stripe-placeholder{position:absolute;inset:0;z-index:1;display:flex;align-items:center;padding:0 14px;color:#9a949b;font-size:16px;font-weight:500;pointer-events:none;}
.payment-card-fields:not(.is-ready) .payment-stripe-field-wrap::after{content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(100deg, transparent 20%, rgba(123,45,92,.06) 45%, transparent 70%);transform:translateX(-100%);animation:payment-field-loading 1.15s infinite;}
.payment-card-fields.is-ready .payment-stripe-placeholder{display:none;}
.payment-card-fields.has-error .payment-stripe-field-wrap{border-color:rgba(152, 46, 59, .45);}
.payment-card-submit{width:100%;margin-top:22px;}
@keyframes payment-field-loading{
to{transform:translateX(100%);}}
.payment-subnav{padding:8px;border:1px solid var(--line);border-radius:18px;display:flex;flex-wrap:wrap;gap:8px;background:var(--white);box-shadow:var(--shadow-sm);}
.payment-subnav a{padding:11px 15px;border-radius:12px;font-size:13px;font-weight:800;}
.payment-subnav a:hover, .payment-subnav a.is-active{background:var(--green-50);color:var(--green-800);}
.payment-history-list, .payment-document-list{display:grid;}
.payment-history-list article, .payment-document-list article{padding:18px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px;}
.payment-history-list article:last-child, .payment-document-list article:last-child{border-bottom:0;}
.payment-history-list strong, .payment-history-list span, .payment-document-list strong, .payment-document-list span{display:block;}
.payment-history-list span, .payment-document-list span{margin-top:4px;color:var(--muted);font-size:12px;}
@media (max-width: 1000px){
.payment-nav-grid{grid-template-columns:1fr;}
.payment-card-list{grid-template-columns:1fr;}}
@media (max-width: 700px){
.payment-section-heading{align-items:stretch;flex-direction:column;}
.payment-section-heading .button{width:100%;}
.payment-dialog__content{padding:32px 22px 24px;}
.payment-dialog__title-row h2{font-size:32px;}
.payment-account-cards__list{grid-template-columns:1fr;}
.payment-card-fields__row{grid-template-columns:1fr;}
.payment-history-list article, .payment-document-list article{align-items:flex-start;flex-direction:column;}
.payment-document-list .button{width:100%;}}
@media (max-width: 640px){
.payment-dialog__content{padding:24px 22px 26px;}
.payment-dialog__close-row button{width:40px;height:40px;}}
/* działający chat klienta */
.patient-chat-message p{overflow-wrap:anywhere;}
.patient-chat-empty{min-height:100%;padding:36px 24px;display:grid;place-content:center;justify-items:center;text-align:center;}
.patient-chat-empty strong{color:var(--ink);font-size:24px;}
.patient-chat-empty p{max-width:520px;margin:8px 0 0;color:var(--muted);font-size:14px;}
.patient-chat-alert{margin-top:-8px;padding:13px 16px;border:1px solid var(--line);border-radius:16px;background:var(--white);font-size:13px;font-weight:750;}
.patient-chat-alert--success{border-color:rgba(48, 116, 83, .25);background:rgba(48, 116, 83, .08);color:#276247;}
.patient-chat-alert--error{border-color:rgba(166, 64, 59, .25);background:rgba(166, 64, 59, .08);color:#8b3430;}
.patient-chat-page__composer textarea:disabled,
.patient-chat-page__composer button:disabled{opacity:.55;cursor:not-allowed;}
/* trwała i przewijana historia powiadomień */
.panel-notifications__list{max-height:min(460px, calc(100vh - 206px));padding-bottom:14px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(123, 45, 92, .45) rgba(123, 45, 92, .08);}
.panel-notifications__list::-webkit-scrollbar{width:9px;}
.panel-notifications__list::-webkit-scrollbar-track{background:rgba(123, 45, 92, .08);}
.panel-notifications__list::-webkit-scrollbar-thumb{border-radius:999px;background:rgba(123, 45, 92, .45);}
.panel-notifications__item.is-unread{background:rgba(123, 45, 92, .075);}
.panel-notifications__item.is-unread:hover{background:rgba(123, 45, 92, .12);}
.panel-notifications__item:last-child{margin-bottom:6px;}
.panel-notifications__title-row{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px;}
.panel-notifications__title-row strong{min-width:0;}
.panel-notifications__unread-dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:var(--green-700);box-shadow:0 0 0 3px rgba(123, 45, 92, .12);}
/* chat na żywo ze stałą wysokością */
.patient-chat-page{height:680px;min-height:680px;max-height:680px;grid-template-rows:auto minmax(0, 1fr) auto;}
.patient-chat-page__messages{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;}
.patient-chat-page__composer textarea{resize:none;}
@media (max-width: 700px){
.patient-chat-page{height:600px;min-height:600px;max-height:600px;}}
/* pliki PDF przypisane klientowi */
.dashboard-client-file-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:18px;padding:24px;}
.dashboard-client-file-card{min-width:0;min-height:220px;padding:22px;border:1px solid var(--line);border-radius:20px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-start;gap:22px;background:var(--green-50);}
.dashboard-client-file-card__type{display:inline-flex;padding:6px 9px;border-radius:999px;background:rgba(123, 45, 92, .1);color:var(--green-800);font-size:10px;font-weight:900;letter-spacing:.07em;}
.dashboard-client-file-card h3{margin:16px 0 9px;overflow-wrap:anywhere;color:var(--ink);font-size:24px;line-height:1.25;}
.dashboard-client-file-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.55;}
.dashboard-client-file-card .button{width:100%;justify-content:center;}
@media (max-width: 760px){
.dashboard-client-file-grid{grid-template-columns:1fr;padding:20px;}}
/* pełna wysokość czatu klienta i mniejszy nagłówek */
.dashboard--chat-page{align-items:stretch;}
.dashboard-layout--chat{align-items:stretch;}
.dashboard-content--chat{min-height:calc(100svh - var(--header-height) - (2 * clamp(44px, 5.4vh, 62px)));display:flex;flex-direction:column;}
.dashboard-content--chat .patient-chat-page{flex:1 1 auto;height:100%;min-height:0;max-height:none;grid-template-rows:auto minmax(0, 1fr) auto;}
.patient-chat-page__header--title-only h2{margin:10px 0 0;font-size:clamp(28px, 3.6vw, 44px);line-height:1.08;}
@media (max-width: 700px){
.dashboard-content--chat{min-height:auto;}
.dashboard-content--chat .patient-chat-page{height:600px;min-height:600px;max-height:600px;}
.patient-chat-page__header--title-only h2{font-size:clamp(24px, 7vw, 34px);}}
/* chat klienta dokładnie na wysokość jednego ekranu */
@media (min-width: 701px){
body.patient-chat-viewport{overflow:hidden;}
body.patient-chat-viewport .site-footer{display:none;}
body.patient-chat-viewport #main-content{height:calc(100dvh - var(--header-height));min-height:0;overflow:hidden;}
body.patient-chat-viewport .dashboard--chat-page{height:100%;min-height:0;padding:22px 0;align-items:stretch;overflow:hidden;}
body.patient-chat-viewport .dashboard-layout--chat{height:100%;min-height:0;align-items:stretch;}
body.patient-chat-viewport .dashboard-layout--chat .dashboard-sidebar{position:static;top:auto;height:100%;min-height:0;max-height:100%;overflow:hidden;grid-template-rows:auto minmax(0, 1fr);align-content:stretch;gap:12px;padding-right:8px;}
body.patient-chat-viewport .dashboard-layout--chat .dashboard-sidebar .dashboard-panel-card--hero{padding:18px 22px;}
body.patient-chat-viewport .dashboard-layout--chat .dashboard-sidebar .dashboard-panel-card--hero .eyebrow{margin-bottom:6px;font-size:12px;}
body.patient-chat-viewport .dashboard-layout--chat .dashboard-sidebar .dashboard-panel-card--hero h1{margin:4px 0 0;font-size:clamp(36px, 3vw, 48px);line-height:.95;}
body.patient-chat-viewport .dashboard-layout--chat .dashboard-sidebar .dashboard-panel-nav{min-height:0;height:100%;padding:12px;grid-template-rows:repeat(var(--patient-sidebar-items, 11), minmax(0, 1fr));gap:7px;}
body.patient-chat-viewport .dashboard-layout--chat .dashboard-sidebar .dashboard-panel-nav a,
    body.patient-chat-viewport .dashboard-layout--chat .dashboard-sidebar .dashboard-panel-nav button{min-height:0;padding:7px 14px;display:flex;align-items:center;font-size:13px;line-height:1.15;}
body.patient-chat-viewport .dashboard-content--chat{height:100%;min-height:0;max-height:100%;overflow:hidden;}
body.patient-chat-viewport .dashboard-content--chat .patient-chat-page{height:100%;min-height:0;max-height:100%;overflow:hidden;}
body.patient-chat-viewport .patient-chat-page__header--title-only h2{font-size:clamp(27px, 2.8vw, 38px);}}
/* zdjęcia w chacie klienta */
.patient-chat-image-field{margin-top:10px;display:flex;align-items:center;gap:12px;min-width:0;}
.patient-chat-image-button{flex:0 0 auto;cursor:pointer;}
.patient-chat-image-button input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;}
.patient-chat-image-button span{min-height:38px;padding:9px 14px;border:1px solid var(--line);border-radius:12px;display:inline-flex;align-items:center;background:var(--white);color:var(--green-800);font-size:12px;font-weight:850;}
.patient-chat-image-button:hover span{border-color:var(--green-700);background:var(--green-50);}
.patient-chat-image-field small{min-width:0;overflow:hidden;color:var(--muted);font-size:11px;text-overflow:ellipsis;white-space:nowrap;}
.patient-chat-message__attachments{margin-top:9px;display:grid;gap:8px;}
.patient-chat-message__attachments a{display:block;overflow:hidden;border-radius:14px;background:rgba(0, 0, 0, .04);}
.patient-chat-message__attachments img{width:min(100%, 460px);max-height:420px;display:block;object-fit:contain;}
.patient-chat-attachment-missing{padding:11px 13px;border:1px dashed var(--line);border-radius:12px;display:block;color:var(--muted);font-size:11px;line-height:1.45;}
.patient-chat-message__attachments a{cursor:zoom-in;}
body.chat-image-lightbox-open{overflow:hidden;}
.chat-image-lightbox[hidden]{display:none;}
.chat-image-lightbox{position:fixed;inset:0;z-index:3000;padding:18px;display:grid;place-items:center;background:rgba(20, 15, 20, .72);opacity:0;transition:opacity .18s ease;}
.chat-image-lightbox.is-open{opacity:1;}
.chat-image-lightbox__dialog{position:relative;width:fit-content;height:fit-content;max-width:94vw;max-height:92vh;padding:0;border:0;display:block;background:transparent;box-shadow:none;}
.chat-image-lightbox__image{width:auto;height:auto;max-width:94vw;max-height:92vh;display:block;object-fit:contain;border-radius:10px;filter:drop-shadow(0 22px 44px rgba(0,0,0,.4));}
.chat-image-lightbox__close{position:absolute;top:10px;right:10px;z-index:1;width:42px;height:42px;padding:0;border:1px solid rgba(255,255,255,.42);border-radius:999px;display:grid;place-items:center;background:rgba(15,12,16,.7);color:#fff;cursor:pointer;font-size:0;line-height:0;}
.chat-image-lightbox__close::before,.chat-image-lightbox__close::after{content:"";position:absolute;left:50%;top:50%;width:16px;height:2px;border-radius:999px;background:currentColor;transform-origin:center;}
.chat-image-lightbox__close::before{transform:translate(-50%,-50%) rotate(45deg);}
.chat-image-lightbox__close::after{transform:translate(-50%,-50%) rotate(-45deg);}
.chat-image-lightbox__close:hover,.chat-image-lightbox__close:focus-visible{background:var(--green-700);outline:none;}
@media (max-width: 700px){
.patient-chat-image-field{align-items:stretch;flex-direction:column;gap:7px;}
.patient-chat-image-button span{width:100%;justify-content:center;}
.chat-image-lightbox{padding:12px;}
.chat-image-lightbox__dialog{max-width:94vw;max-height:92vh;}
.chat-image-lightbox__image{max-width:94vw;max-height:92vh;border-radius:7px;}
.chat-image-lightbox__close{top:8px;right:8px;}}
/* ikonka i wiele zdjęć w chacie klienta */
.patient-chat-page__composer--images{display:grid;grid-template-columns:40px minmax(0, 1fr);column-gap:10px;row-gap:10px;align-items:start;}
.patient-chat-page__composer--images .patient-chat-page__toolbar{grid-column:1;grid-row:1;margin:0;display:flex;align-items:center;justify-content:flex-start;align-self:center;}
.patient-chat-page__toolbar .patient-chat-image-button{position:relative;display:inline-flex;cursor:pointer;}
.patient-chat-page__toolbar .patient-chat-image-button span{width:40px;height:40px;min-height:0;padding:0;border:1px solid var(--line);border-radius:12px;display:grid;place-items:center;background:var(--white);color:var(--green-800);transition:border-color .16s ease, background .16s ease, transform .16s ease;}
.patient-chat-page__toolbar .patient-chat-image-button:hover span{border-color:var(--green-700);background:var(--green-50);transform:translateY(-1px);}
.patient-chat-page__toolbar .patient-chat-image-button svg{width:21px;height:21px;display:block;fill:currentColor;}
.patient-chat-page__toolbar .patient-chat-image-button b{position:absolute;top:-6px;right:-7px;min-width:20px;height:20px;padding:0 5px;border:2px solid var(--white);border-radius:999px;display:grid;place-items:center;background:var(--green-700);color:var(--white);font-size:10px;line-height:1;}
.patient-chat-page__toolbar .patient-chat-image-button b[hidden]{display:none;}
.patient-chat-message__attachments{grid-template-columns:repeat(auto-fit, minmax(120px, 1fr));width:min(100%, 520px);}
.patient-chat-message__attachments img{width:100%;height:190px;max-height:none;object-fit:cover;}
/* podgląd kolejki zdjęć w chacie klienta: obok przycisku, żeby composer nie rósł i nie wypychał akcji poza kartę */
.patient-chat-page__composer--images .patient-chat-selected-images{grid-column:2;grid-row:1;min-width:0;height:58px;margin:0;padding:5px;border:1px solid var(--line);border-radius:14px;display:flex;align-items:center;gap:7px;overflow-x:auto;overflow-y:hidden;background:rgba(123, 45, 92, .045);scrollbar-gutter:stable;}
.patient-chat-selected-images[hidden]{display:none;}
.patient-chat-selected-image{position:relative;flex:0 0 46px;width:46px;height:46px;overflow:hidden;border:1px solid rgba(123, 45, 92, .14);border-radius:11px;background:rgba(0, 0, 0, .04);box-shadow:0 5px 12px rgba(31, 34, 42, .08);}
.patient-chat-selected-image img{width:100%;height:100%;display:block;object-fit:cover;}
.patient-chat-selected-image button{position:absolute;top:3px;right:3px;width:20px;height:20px;padding:0;border:0;border-radius:999px;display:grid;place-items:center;background:rgba(31, 34, 42, .86);color:var(--white);cursor:pointer;font-size:15px;font-weight:900;line-height:1;}
.patient-chat-selected-image button:hover{background:var(--green-800);}
.patient-chat-page__composer--images > textarea{grid-column:1 / -1;grid-row:2;}
.patient-chat-page__composer--images .patient-chat-selected-images:not([hidden]) + textarea{min-height:72px;}
.patient-chat-page__composer--images > .patient-chat-page__actions{grid-column:1 / -1;grid-row:3;margin-top:0;}

.dashboard-client-file-card__payment{display:inline-flex;margin-left:6px;padding:6px 9px;border:1px solid transparent;border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;}
.dashboard-client-file-card__payment.is-paid{border-color:rgba(38,142,94,.2);background:rgba(38,142,94,.1);color:#1f704c;}
.dashboard-client-file-card__payment.is-unpaid{border-color:rgba(177,54,68,.2);background:rgba(177,54,68,.09);color:#8f2836;}

/* ===== 40-privacy-account.css ===== */
/* regulamin, zgody i cookies */
.legal-page{background:radial-gradient(circle at 14% 8%, rgba(123, 45, 92, .08), transparent 28%),
        linear-gradient(180deg, #fff 0%, #fbf7f9 100%);}
.legal-layout{max-width:1060px;display:grid;gap:22px;}
.legal-hero,
.legal-card{border:1px solid var(--line);border-radius:28px;background:rgba(255,255,255,.92);box-shadow:0 18px 60px rgba(64, 45, 55, .08);}
.legal-hero{padding:clamp(28px, 5vw, 54px);}
.legal-hero h1{max-width:760px;margin:0;color:var(--green-900);font-family:Georgia, "Times New Roman", serif;font-size:clamp(36px, 6vw, 66px);line-height:.98;}
.legal-hero > p{max-width:820px;margin:18px 0 0;color:var(--muted);font-size:clamp(15px, 1.5vw, 18px);line-height:1.75;}
.legal-actions{margin-top:25px;display:flex;flex-wrap:wrap;gap:12px;}
.legal-card{padding:clamp(24px, 4vw, 42px);}
.legal-card h2{margin:0 0 14px;color:var(--green-900);font-family:Georgia, "Times New Roman", serif;font-size:clamp(26px, 3vw, 37px);}
.legal-card p,
.legal-list{color:var(--muted);font-size:15px;line-height:1.75;}
.legal-card h2:not(:first-child){margin-top:28px;}
.legal-list{margin:0;padding-left:20px;}
.legal-list li + li{margin-top:10px;}
.legal-card a,
.legal-note strong{color:var(--green-800);}
.legal-note{margin-top:22px;padding:15px 17px;border:1px solid rgba(123, 45, 92, .16);border-radius:17px;background:rgba(123, 45, 92, .055);}
.auth-consents{display:grid;gap:10px;}
.auth-consents .consent{align-items:flex-start;}
.auth-consents .consent span{line-height:1.55;}
.auth-consents .consent a{color:var(--green-800);font-weight:900;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;}
.auth-consents .consent--optional{opacity:.9;}
.auth-consents .consent--check-all{padding-bottom:4px;color:var(--ink);font-size:12px;font-weight:800;}
.auth-consents .consent--check-all input{margin-top:0;}
.cookie-consent{position:fixed;left:18px;right:18px;bottom:18px;z-index:120;max-width:1050px;margin:0 auto;padding:14px;border:1px solid rgba(123, 45, 92, .18);border-radius:22px;display:grid;grid-template-columns:minmax(0, 1fr) auto;align-items:center;gap:18px;background:rgba(255,255,255,.96);box-shadow:0 20px 70px rgba(30, 36, 41, .18);backdrop-filter:blur(16px);}
.cookie-consent[hidden]{display:none;}
.cookie-consent__copy{display:grid;gap:4px;}
.cookie-consent__copy strong{color:var(--green-900);font-size:14px;}
.cookie-consent__copy p{margin:0;color:var(--muted);font-size:12px;line-height:1.55;}
.cookie-consent__actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:9px;}
.cookie-consent__actions a{color:var(--green-800);font-size:12px;font-weight:900;white-space:nowrap;}
.cookie-consent__actions .button{min-height:39px;padding:10px 14px;font-size:12px;}
@media (max-width: 760px){
.cookie-consent{left:10px;right:10px;bottom:10px;grid-template-columns:1fr;}
.cookie-consent__actions{justify-content:stretch;}
.cookie-consent__actions .button{flex:1 1 150px;}}
/* RODO, panel zgód i pełniejsze ustawienia cookies */
.footer-cookie-settings{border:0;padding:0;background:transparent;color:inherit;cursor:pointer;font:inherit;text-align:left;}
.footer-cookie-settings:hover{color:var(--green-800);}
.cookie-consent__settings{grid-column:1 / -1;padding-top:12px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3, minmax(0, 1fr)) auto;align-items:stretch;gap:10px;}
.cookie-consent__settings[hidden]{display:none;}
.cookie-consent__settings label{padding:12px;border:1px solid var(--line);border-radius:16px;display:flex;align-items:flex-start;gap:9px;background:rgba(255,255,255,.76);}
.cookie-consent__settings .cookie-consent__check-all{grid-column:1 / -1;padding:2px 12px;border:0;border-radius:0;background:transparent;font-weight:800;}
.cookie-consent__settings input{margin-top:3px;}
.cookie-consent__settings span{display:grid;gap:3px;}
.cookie-consent__settings strong{color:var(--green-900);font-size:12px;}
.cookie-consent__settings small{color:var(--muted);font-size:10px;line-height:1.4;}
.cookie-consent__settings .button{align-self:center;}
.privacy-request-form{display:grid;gap:14px;}
.privacy-request-form label{display:grid;gap:7px;color:var(--green-900);font-weight:850;}
.privacy-request-form select,
.privacy-request-form textarea{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--text);font:inherit;}
.privacy-request-list,
.privacy-consent-list{display:grid;gap:10px;}
.privacy-request-item,
.privacy-consent-item{padding:14px 15px;border:1px solid var(--line);border-radius:16px;display:grid;gap:8px;background:rgba(255,255,255,.74);}
.privacy-request-item > div{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.privacy-request-item strong,
.privacy-consent-item strong{color:var(--green-900);}
.privacy-request-item span,
.privacy-consent-item span,
.dashboard-muted-text{color:var(--muted);font-size:13px;line-height:1.55;}
.privacy-request-item b{width:fit-content;padding:5px 9px;border-radius:999px;background:rgba(123,45,92,.08);color:var(--green-800);font-size:11px;}
.legal-actions--panel{margin-top:18px;}
@media (max-width: 860px){
.cookie-consent__settings{grid-template-columns:1fr;}}
/* ustawienia bezpieczeństwa konta */
.dashboard-security-copy{margin:0 0 1rem;color:var(--muted, #6c6268);line-height:1.65;}
.dashboard-security-status{display:inline-flex;align-items:center;gap:.5rem;margin:.35rem 0 1rem;padding:.55rem .8rem;border-radius:999px;font-size:.88rem;font-weight:700;background:#f2edf0;color:#54474e;}
.dashboard-security-status.is-active{background:#e9f6ee;color:#20643d;}
.dashboard-security-status.is-inactive{background:#f7ecef;color:#8a334f;}
.dashboard-security-status.is-pending{background:#fff5dd;color:#765315;}
.dashboard-security-divider{height:1px;margin:1.4rem 0;background:rgba(60, 35, 48, .12);}
.dashboard-alert--info{border-color:rgba(73, 104, 153, .25);background:#eef4fb;color:#2f4e78;}
/* jeden, stały sidebar we wszystkich zakładkach panelu */
@media (min-width: 1025px){
body.patient-panel-viewport{height:100dvh;overflow:hidden;}
body.patient-panel-viewport .site-footer{display:none;}
body.patient-panel-viewport #main-content{height:calc(100dvh - var(--header-height));min-height:0;overflow:hidden;}
body.patient-panel-viewport #main-content > .section{height:100%;min-height:0;padding:0;align-items:stretch;overflow:hidden;}
body.patient-panel-viewport .dashboard-layout{height:100%;min-height:0;align-items:stretch;gap:28px;overflow:hidden;}
body.patient-panel-viewport .dashboard-sidebar{position:sticky;top:0;height:100%;min-height:0;max-height:100%;display:flex;flex-direction:column;gap:12px;padding:0;overflow:hidden;align-self:stretch;}
body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-card--hero{flex:0 0 auto;padding:18px 22px;border-radius:0 0 var(--radius-md) var(--radius-md);}
body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-card--hero .eyebrow{margin-bottom:6px;font-size:12px;}
body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-card--hero h1{margin:4px 0 0;font-size:clamp(35px, 2.8vw, 46px);line-height:.96;}
body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav{flex:1 1 auto;width:100%;height:auto;min-height:0;display:grid;grid-template-rows:repeat(var(--patient-sidebar-items, 11), minmax(0, 1fr));gap:7px;padding:11px;overflow:hidden;border-radius:var(--radius-md) var(--radius-md) 0 0;}
body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav a,
    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav button{min-width:0;min-height:0;height:100%;padding:6px 14px;display:flex;align-items:center;font-size:13px;line-height:1.15;overflow:hidden;}
body.patient-panel-viewport .dashboard-layout > .dashboard-content,
    body.patient-panel-viewport .dashboard-layout > .dashboard-main{height:100%;min-height:0;max-height:100%;overflow-x:hidden;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch;touch-action:pan-y;align-content:start;grid-auto-rows:max-content;padding:22px 8px 22px 0;}
body.patient-chat-viewport .dashboard-layout > .dashboard-content--chat{overflow:hidden;}}
/* spójna typografia panelu i poprawne pole numeru telefonu */
body.patient-panel-viewport{--patient-ui-font:"Segoe UI", Arial, Helvetica, sans-serif;}
body.patient-panel-viewport .dashboard-sidebar,
body.patient-panel-viewport .dashboard-content,
body.patient-panel-viewport .dashboard-main,
body.patient-panel-viewport input,
body.patient-panel-viewport select,
body.patient-panel-viewport textarea,
body.patient-panel-viewport button{font-family:var(--patient-ui-font);}
body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-card--hero h1,
body.patient-panel-viewport .dashboard-content h1,
body.patient-panel-viewport .dashboard-content h2,
body.patient-panel-viewport .dashboard-content h3,
body.patient-panel-viewport .dashboard-main h1,
body.patient-panel-viewport .dashboard-main h2,
body.patient-panel-viewport .dashboard-main h3{font-family:var(--patient-ui-font);font-weight:700;letter-spacing:-.025em;line-height:1.12;}
body.patient-panel-viewport .dashboard-account-layout h2{margin-bottom:18px;font-size:clamp(30px, 2.35vw, 42px);}
body.patient-panel-viewport .dashboard-field input,
body.patient-panel-viewport .dashboard-field select,
body.patient-panel-viewport .dashboard-field textarea{font-family:var(--patient-ui-font);font-weight:400;letter-spacing:0;}
/* sidebar panelu podopiecznego w stylu sidebara postów + pełna wysokość sekcji plików */
@media (min-width: 1025px){
body.patient-panel-viewport{--patient-sidebar-viewport-gap:18px;--patient-sidebar-total-gap:36px;}
body.patient-panel-viewport .dashboard.section{min-height:calc(100dvh - var(--runtime-header-height));padding-top:var(--patient-sidebar-viewport-gap);padding-bottom:var(--patient-sidebar-viewport-gap);}
body.patient-panel-viewport .dashboard-layout{grid-template-columns:340px minmax(0, 1fr);gap:36px;}
body.patient-panel-viewport .dashboard-sidebar{position:sticky;z-index:12;top:calc(var(--runtime-header-height) + var(--patient-sidebar-viewport-gap));height:calc(100dvh - var(--runtime-header-height) - var(--patient-sidebar-total-gap));min-height:0;max-height:none;align-self:start;display:block;overflow:visible;}
body.patient-panel-viewport .dashboard-sidebar__panel{height:100%;min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:var(--white);box-shadow:var(--shadow-sm);display:grid;grid-template-rows:auto minmax(0, 1fr);}
body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-card--hero,
    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav{border:0;border-radius:0;background:transparent;box-shadow:none;}
body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-card--hero{padding:20px 20px 16px;border-bottom:1px solid var(--line);}
body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-card--hero .eyebrow{margin-bottom:6px;color:var(--green-700);font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-card--hero h1{margin:4px 0 0;font-size:34px;line-height:1;}
body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav{width:100%;min-height:0;display:grid;grid-template-rows:repeat(var(--patient-sidebar-items, 11), minmax(0, 1fr));gap:5px;padding:14px 12px;overflow:hidden;}
body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav a,
    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav button{min-width:0;min-height:36px;height:100%;padding:8px 12px;border:0;border-radius:11px;background:transparent;color:var(--text);display:flex;align-items:center;justify-content:flex-start;font-size:13px;font-weight:800;line-height:1.15;text-align:left;transition:background .2s ease, color .2s ease, transform .2s ease;}
body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav a:hover,
    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav button:hover{background:var(--green-50);color:var(--green-700);transform:translateX(2px);}
body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav a.is-active,
    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav button.is-active{background:var(--green-700);color:var(--white);}
body.patient-panel-viewport .dashboard-content--files{display:flex;flex-direction:column;height:100%;min-height:0;}
body.patient-panel-viewport .dashboard-content--files > .dashboard-files-panel{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;}
body.patient-panel-viewport .dashboard-content--files .dashboard-files-empty,
    body.patient-panel-viewport .dashboard-content--files .dashboard-client-file-grid,
    body.patient-panel-viewport .dashboard-content--files .education-materials-grid{flex:1 1 auto;min-height:0;}
body.patient-panel-viewport .dashboard-content--files .dashboard-client-file-grid,
    body.patient-panel-viewport .dashboard-content--files .education-materials-grid{overflow-y:auto;align-content:start;}
body.patient-panel-viewport .dashboard-content--files .dashboard-files-empty{min-height:0;}}
/* sidebar wyrównany pionowo z kartami głównej kolumny */
@media (min-width: 1025px){
body.patient-panel-viewport .dashboard-sidebar{top:calc(var(--runtime-header-height) + var(--patient-sidebar-viewport-gap) + 22px);height:calc(100dvh - var(--runtime-header-height) - var(--patient-sidebar-total-gap) - 44px);margin-top:22px;margin-bottom:22px;}}
/* sidebar dokładnie w widzialnym obszarze panelu */
@media (min-width: 1025px){
body.patient-panel-viewport .dashboard-sidebar{position:relative !important;top:auto !important;bottom:auto !important;height:calc(100% - 44px) !important;min-height:0 !important;max-height:calc(100% - 44px) !important;margin:22px 0 !important;align-self:stretch !important;overflow:hidden !important;}
body.patient-panel-viewport .dashboard-sidebar__panel{width:100%;height:100% !important;min-height:0 !important;max-height:100% !important;}
body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-card--hero h1{max-width:100%;margin:4px 0 0;font-size:clamp(18px, 1.45vw, 22px) !important;line-height:1.12 !important;overflow-wrap:anywhere;word-break:normal;}}
/* automatyczne wycofywanie zgód w panelu prywatności */
.privacy-auto-card{display:grid;gap:16px;}
.privacy-auto-card h2,
.privacy-request-card h2{margin-bottom:0;}
.privacy-auto-form{display:grid;gap:16px;}
.privacy-auto-check-all{margin:0 0 12px;padding:2px 17px;display:grid;grid-template-columns:19px minmax(0,1fr);align-items:start;gap:12px;color:var(--ink);font-size:13px;font-weight:800;cursor:pointer;}
.privacy-auto-check-all input{width:19px;height:19px;margin:0;accent-color:var(--green-700);}
.privacy-auto-options{display:grid;gap:12px;}
.privacy-auto-option{display:grid;grid-template-columns:auto minmax(0, 1fr);align-items:start;gap:12px;padding:16px 17px;border:1px solid var(--line);border-radius:17px;background:var(--green-50);cursor:pointer;}
.privacy-auto-option--warning{border-color:rgba(160, 89, 34, .24);background:rgba(199, 131, 72, .08);}
.privacy-auto-option input{width:19px;height:19px;margin-top:2px;accent-color:var(--green-700);}
.privacy-auto-option span{display:grid;gap:5px;}
.privacy-auto-option strong{color:var(--ink);font-size:14px;line-height:1.45;}
.privacy-auto-option small{color:var(--muted);font-size:12px;line-height:1.55;}
.privacy-cookie-row{padding-top:16px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:18px;}
.privacy-cookie-row div{display:grid;gap:4px;}
.privacy-cookie-row strong{color:var(--ink);font-size:14px;}
.privacy-cookie-row p{margin:0;color:var(--muted);font-size:12px;line-height:1.5;}
@media (max-width: 700px){
.privacy-cookie-row{align-items:stretch;flex-direction:column;}
.privacy-cookie-row .button,
    .privacy-auto-form > .button{width:100%;}}
/* historia zmian e-maila i numeru, bez zabezpieczeń SMS */
.dashboard-account-history-card{grid-column:1 / -1;}
.dashboard-contact-history{margin-top:18px;display:grid;gap:10px;}
.dashboard-contact-history article{padding:15px 16px;border:1px solid var(--line);border-radius:15px;background:var(--green-50);}
.dashboard-contact-history article > div{display:flex;align-items:center;justify-content:space-between;gap:16px;}
.dashboard-contact-history strong{color:var(--ink);font-size:13px;}
.dashboard-contact-history time{color:var(--muted);font-size:11px;font-weight:700;}
.dashboard-contact-history p{margin:7px 0 0;color:var(--muted);overflow-wrap:anywhere;font-size:13px;}
@media (max-width: 700px){
.dashboard-contact-history article > div{align-items:flex-start;flex-direction:column;gap:4px;}}
/* mniejszy nagłówek ręcznego wniosku prywatności */
.privacy-request-card__title{font-size:clamp(38px, 4.2vw, 56px);line-height:1.05;letter-spacing:-0.03em;}
@media (max-width: 768px){
.privacy-request-card__title{font-size:clamp(28px, 8vw, 40px);}}
/* uproszczony przycisk ustawień cookies w prywatności */
.privacy-cookie-row{display:block;}
.privacy-cookie-row__button{width:100%;justify-content:center;}
/* stały prefiks +48 dla numeru kontaktowego */
.dashboard-phone-input{min-height:56px;display:flex;align-items:center;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--white);transition:border-color .18s ease, box-shadow .18s ease;}
.dashboard-phone-input:focus-within{border-color:rgba(123, 45, 92, .4);box-shadow:0 0 0 4px rgba(123, 45, 92, .08);}
.dashboard-phone-input__prefix{align-self:stretch;min-width:64px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;border-right:1px solid var(--line);background:var(--green-50);color:var(--ink);font-size:15px !important;font-weight:800 !important;}
.dashboard-field .dashboard-phone-input input{min-height:54px;padding-left:14px;border:0;border-radius:0;box-shadow:none;}
.dashboard-field .dashboard-phone-input input:focus{border:0;box-shadow:none;}
.dashboard-field > small{color:var(--muted);font-size:11px;font-weight:600;line-height:1.45;}
/* odporne pole telefonu, toastowe komunikaty i centrum pomocy */
.dashboard-contact-rule{margin:14px 0 0;color:var(--muted);font-size:12px;line-height:1.55;}
.dashboard-phone-input__editor{flex:1 1 auto;min-width:0;min-height:54px;padding:16px 14px;display:flex;align-items:center;overflow:hidden;outline:0;color:var(--ink);font-size:15px;line-height:1.4;white-space:nowrap;caret-color:var(--green-800);}
.dashboard-phone-input__editor:empty::before,
.dashboard-phone-input__editor.is-empty::before{content:attr(data-placeholder);color:#80757b;pointer-events:none;}
.dashboard-toast{position:fixed;z-index:1200;top:calc(var(--runtime-header-height, var(--header-height)) + 12px);left:20px;width:calc(100vw - 40px);max-width:none;margin:0;box-sizing:border-box;box-shadow:0 20px 50px rgba(49, 27, 39, .18);opacity:0;transform:translateY(-140%);transition:transform .38s cubic-bezier(.22, 1, .36, 1), opacity .28s ease;pointer-events:none;}
.dashboard-toast.is-visible{opacity:1;transform:translateY(0);}
.dashboard-toast.is-hiding{opacity:0;transform:translateY(-140%);}
.support-center-layout{height:100%;min-height:0;display:grid;grid-template-columns:minmax(270px, 330px) minmax(0, 1fr);gap:18px;}
.support-thread-sidebar{min-height:0;padding:0;overflow:hidden;display:flex;flex-direction:column;}
.support-thread-sidebar__head{padding:20px 20px 14px;border-bottom:1px solid var(--line);}
.support-thread-sidebar__head h2{margin:8px 0 0;font-size:25px;}
.support-new-thread{padding:16px 18px;border-bottom:1px solid var(--line);display:grid;gap:10px;background:var(--green-50);}
.support-new-thread .dashboard-field{margin:0;}
.support-new-thread textarea{min-height:88px;resize:vertical;}
.support-thread-list{flex:1 1 auto;min-height:0;padding:10px;display:grid;align-content:start;gap:7px;overflow-y:auto;}
.support-thread-item{position:relative;padding:12px 42px 12px 13px;border-radius:13px;display:grid;gap:5px;color:var(--ink);text-decoration:none;transition:background .2s ease, color .2s ease;}
.support-thread-item:hover{background:var(--green-50);}
.support-thread-item.is-active{background:var(--green-700);color:var(--white);}
.support-thread-item strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;}
.support-thread-item span{opacity:.72;font-size:10px;}
.support-thread-item b{position:absolute;top:50%;right:12px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;display:grid;place-items:center;background:#fff;color:var(--green-800);font-size:10px;transform:translateY(-50%);}
.support-thread-empty{padding:24px 12px;color:var(--muted);text-align:center;font-size:13px;}
.support-conversation{height:100%;min-height:0;max-height:100%;overflow:hidden;grid-template-rows:auto minmax(0, 1fr) auto;}
.support-conversation__header h2{max-width:720px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.support-thread-closed{padding:18px 24px;border-top:1px solid var(--line);background:var(--green-50);color:var(--muted);text-align:center;font-size:13px;font-weight:700;}
@media (min-width: 701px){
body.patient-chat-viewport .support-center-layout{height:100%;}
body.patient-chat-viewport .support-center-layout .patient-chat-page{height:100%;min-height:0;max-height:100%;}}
@media (max-width: 900px){
.support-center-layout{height:auto;grid-template-columns:1fr;}
.support-thread-sidebar{max-height:none;}
.support-thread-list{max-height:320px;}
.support-conversation{height:620px;min-height:620px;}}
/* dopracowanie formularza pomocy i zamykanie wątku przez klienta */
.support-new-thread textarea{min-height:108px;border-radius:14px !important;}
.support-conversation__header{grid-template-columns:minmax(0, 1fr) auto;align-items:center;column-gap:18px;}
.support-thread-close-form{margin:0;align-self:center;}
.support-thread-close-button{min-height:40px;padding:10px 16px;white-space:nowrap;}
@media (max-width: 700px){
.support-conversation__header{grid-template-columns:1fr;align-items:stretch;}
.support-thread-close-form,
    .support-thread-close-button{width:100%;}}
/* Osobna historia zgód i skróty panelu prywatności. */
.privacy-shortcuts{padding-top:16px;border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.privacy-shortcuts .button{width:100%;justify-content:center;}
.dashboard-content--consents{display:grid;align-content:start;gap:18px;}
.consent-history-head{display:flex;align-items:center;justify-content:space-between;gap:22px;}
.consent-history-head > div{min-width:0;display:grid;gap:8px;}
.consent-history-head h1{margin:0;color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,4vw,54px);line-height:1;}
.consent-history-head p{max-width:760px;margin:0;}
.consent-history-head > .button{flex:0 0 auto;}
.consent-category-list{display:grid;gap:14px;}
.consent-category{padding:0;overflow:hidden;}
.consent-category > summary{list-style:none;padding:20px 22px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;cursor:pointer;user-select:none;}
.consent-category > summary::-webkit-details-marker{display:none;}
.consent-category > summary > span{min-width:0;display:grid;gap:5px;}
.consent-category > summary strong{color:var(--ink);font-size:18px;line-height:1.3;}
.consent-category > summary small{color:var(--muted);font-size:12px;line-height:1.5;}
.consent-category > summary b{min-width:32px;height:32px;padding:0 9px;border-radius:999px;display:grid;place-items:center;background:var(--green-50);color:var(--green-800);font-size:12px;}
.consent-category > summary::after{content:"+";color:var(--green-800);font-size:24px;font-weight:500;line-height:1;}
.consent-category[open] > summary::after{content:"−";}
.consent-category__body{padding:0 22px 22px;border-top:1px solid var(--line);display:grid;gap:10px;}
.consent-history-item{padding:16px 17px;border:1px solid var(--line);border-radius:16px;display:grid;gap:9px;background:rgba(255,255,255,.76);}
.consent-history-item:first-child{margin-top:18px;}
.consent-history-item__head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;}
.consent-history-item__head time{color:var(--muted);font-size:11px;font-weight:700;}
.consent-history-item > strong{color:var(--ink);font-size:13px;line-height:1.55;}
.consent-history-item > small{color:var(--muted);font-size:11px;}
.consent-status{width:fit-content;padding:5px 9px;border-radius:999px;font-size:10px;font-weight:900;letter-spacing:.03em;}
.consent-status.is-accepted{background:#e9f6ee;color:#20643d;}
.consent-status.is-withdrawn{background:#fff3df;color:#795316;}
.consent-status.is-rejected{background:#f7ecef;color:#8a334f;}
.consent-history-links{margin-top:0;}
@media (max-width:700px){
.privacy-shortcuts{grid-template-columns:1fr;}
.consent-history-head{align-items:stretch;flex-direction:column;}
.consent-history-head > .button{width:100%;}
.consent-category > summary{padding:17px;}
.consent-category__body{padding:0 14px 14px;}}
/* Samodzielne usunięcie konta z 30-dniową retencją. */
.privacy-account-delete-card{display:grid;gap:16px;}
.privacy-account-delete-card h2{margin:0;}
.privacy-account-delete-form{display:grid;gap:12px;}
.privacy-delete-option{padding:15px 16px;border:1px solid var(--line);border-radius:17px;display:flex;align-items:flex-start;gap:12px;background:rgba(255,255,255,.78);cursor:pointer;}
.privacy-delete-option input{flex:0 0 auto;margin-top:3px;}
.privacy-delete-option span{min-width:0;display:grid;gap:5px;}
.privacy-delete-option strong{color:var(--ink);font-size:13px;line-height:1.45;}
.privacy-delete-option small{color:var(--muted);font-size:12px;line-height:1.58;}
.privacy-delete-option--danger{border-color:rgba(170,55,64,.22);background:rgba(170,55,64,.045);}
.privacy-delete-option:has(input:disabled){cursor:not-allowed;opacity:.62;}
.privacy-account-delete-blockers{padding:14px 16px;border:1px solid rgba(170,55,64,.25);border-radius:16px;background:#fff1f1;color:#8d2d38;display:grid;gap:7px;}
.privacy-account-delete-blockers p{margin:0;font-size:12px;font-weight:700;line-height:1.55;}
.button--danger{border-color:#8d2d38;background:#8d2d38;color:#fff;box-shadow:0 12px 28px rgba(141,45,56,.18);}
.button--danger:hover{background:#74212c;color:#fff;}
.button--danger:disabled{cursor:not-allowed;opacity:.48;box-shadow:none;}
.privacy-auto-option--success{border-color:rgba(31, 113, 75, .24);background:rgba(237, 247, 241, .88);}
/* podział wniosków RODO na aktywne i zamknięte w panelu klienta */
.privacy-request-overview-card{display:grid;gap:14px;}
.privacy-request-overview-card h2{margin:0;}
.privacy-request-item{gap:12px;}
.privacy-request-item--active{border-color:rgba(123,45,92,.22);background:linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,250,252,.8));}
.privacy-request-item--closed{background:rgba(255,255,255,.64);}
.privacy-request-item--status-rejected{border-color:rgba(150,49,65,.25);background:rgba(150,49,65,.045);}
.privacy-request-item__head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;flex-wrap:wrap;}
.privacy-request-item__head > div{display:grid;gap:4px;}
.privacy-request-item__head small{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.02em;}
.privacy-request-item__head time{color:var(--muted);font-size:12px;font-weight:800;}
.privacy-request-status{width:fit-content;padding:5px 10px;border-radius:999px;background:rgba(123,45,92,.08);color:var(--green-800);font-size:11px;font-weight:900;}
.privacy-request-status--new{background:rgba(123,45,92,.10);color:var(--green-900);}
.privacy-request-status--in_progress{background:rgba(47,78,120,.10);color:#2f4e78;}
.privacy-request-status--closed{background:rgba(15,122,85,.10);color:#0f7a55;}
.privacy-request-status--rejected{background:rgba(150,49,65,.10);color:#963141;}
.privacy-request-timeline{display:grid;gap:9px;}
.privacy-request-timeline > div{padding:11px 12px;border:1px solid var(--line);border-radius:13px;background:rgba(255,255,255,.66);}
.privacy-request-timeline span{display:block;margin-bottom:4px;color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;}
.privacy-request-timeline p{margin:0;color:var(--text);font-size:13px;line-height:1.65;overflow-wrap:anywhere;}
@media (max-width:700px){.privacy-request-item__head{display:grid;gap:8px;}.privacy-request-item__head time{font-size:11px;}}
/* Etap 357: zwijane panele aktywnych/zamkniętych wniosków klienta. */
.privacy-request-overview-card--collapsible{padding:0;overflow:hidden;display:block;}
.privacy-request-overview-card--collapsible > summary{list-style:none;padding:20px 22px;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:18px;cursor:pointer;user-select:none;}
.privacy-request-overview-card--collapsible > summary::-webkit-details-marker{display:none;}
.privacy-request-overview-card--collapsible > summary > span{min-width:0;display:grid;gap:6px;}
.privacy-request-overview-card--collapsible > summary .tag{width:fit-content;margin:0;font-style:normal;}
.privacy-request-overview-card--collapsible > summary strong{color:var(--ink);font-size:20px;line-height:1.2;}
.privacy-request-overview-card--collapsible > summary em{color:var(--muted);font-size:12px;font-style:normal;line-height:1.55;}
.privacy-request-overview-card--collapsible > summary b{min-width:34px;height:34px;padding:0 10px;border-radius:999px;display:grid;place-items:center;background:rgba(123,45,92,.08);color:var(--green-900);font-size:12px;font-weight:900;}
.privacy-request-overview-card--collapsible > summary::after{content:"+";color:var(--green-800);font-size:25px;font-weight:600;line-height:1;}
.privacy-request-overview-card--collapsible[open] > summary::after{content:"−";}
.privacy-request-overview-card__body{padding:0 22px 22px;border-top:1px solid var(--line);display:grid;gap:14px;}
.privacy-request-overview-card__body > .dashboard-empty-state,
.privacy-request-overview-card__body > .privacy-request-list{margin-top:18px;}
@media (max-width:700px){
.privacy-request-overview-card--collapsible > summary{padding:17px;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;}
.privacy-request-overview-card--collapsible > summary strong{font-size:18px;}
.privacy-request-overview-card--collapsible > summary em{font-size:11px;}
.privacy-request-overview-card__body{padding:0 14px 14px;}}

/* Licznik nieprzeczytanych wiadomości w menu klienta. */
.dashboard-panel-nav__item-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.dashboard-panel-nav__badge{margin-left:auto;min-width:20px;height:20px;padding:0 6px;flex:0 0 auto;border-radius:999px;display:grid;place-items:center;background:var(--green-700);color:var(--white);font-size:10px;font-weight:900;line-height:1;box-shadow:0 0 0 2px rgba(123,45,92,.08);}
.dashboard-panel-nav__badge[hidden]{display:none !important;}
.dashboard-panel-nav a.is-active .dashboard-panel-nav__badge{background:var(--white);color:var(--green-800);box-shadow:none;}

/* ===== 50-offer-support.css ===== */
/* wspólna oferta na osobnej stronie i w panelu subskrypcji */
.offer-page__offer{padding-top:clamp(56px, 7vw, 96px);}
.dashboard-offer-embed{padding:34px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);box-shadow:var(--shadow-sm);}
.dashboard-offer-embed .section-heading--center{margin-bottom:28px;}
.dashboard-offer-embed .offer-configurator{margin-top:0;margin-bottom:32px;}
@media (max-width: 1250px){
.dashboard-offer-embed .pricing-grid{grid-template-columns:1fr;max-width:680px;margin-inline:auto;}}
@media (max-width: 700px){
.dashboard-offer-embed{padding:22px 16px;}}
/* kontakt i ustawienia cookies w zwartej stopce */
@media (min-width: 1121px){
.site-footer--compact .footer-main{grid-template-columns:auto minmax(150px, .8fr) minmax(250px, 1fr) auto minmax(210px, .8fr) auto;}}
.footer-contact-block{display:flex;align-items:center;gap:13px;}
.footer-contact-block .footer-section-label{align-self:center;}
.footer-contact-block__items{display:grid;grid-template-columns:max-content;gap:5px;align-items:center;}
.footer-contact-block__items a{white-space:nowrap;}
.footer-cookie-block{min-width:0;display:flex;align-items:center;justify-content:flex-start;}
.footer-cookie-block .footer-cookie-settings{width:fit-content;color:rgba(255,255,255,.82);font-size:9px;line-height:1.2;font-weight:600;white-space:nowrap;transition:color .18s ease, transform .18s ease;}
.footer-cookie-block .footer-cookie-settings:hover,
.footer-cookie-block .footer-cookie-settings:focus-visible{color:#fff;transform:translateY(-1px);}
@media (max-width: 1320px) and (min-width: 1121px){
.site-footer--compact .footer-main{grid-template-columns:auto minmax(150px, .8fr) minmax(240px, 1fr) auto;}
.footer-meta-block{grid-column:1 / -2;}
.footer-social-block{grid-column:-2 / -1;justify-content:end;}}
@media (max-width: 1120px){
.footer-cookie-block{grid-column:2;justify-content:flex-start;}}
@media (max-width: 760px){
.footer-cookie-block{grid-column:1;}
.footer-contact-block{align-items:center;}}
/* jedna kontrola cookies i równe kolumny stopki */
@media (min-width: 1121px){
.site-footer--compact .footer-main{grid-template-columns:minmax(125px, .75fr) minmax(240px, 1.25fr) minmax(300px, 1.35fr) minmax(145px, .7fr);grid-template-areas:"brand nav contact cookie"
            "meta meta meta social";column-gap:clamp(24px, 4vw, 64px);row-gap:10px;align-items:center;}
.footer-brand-block{grid-area:brand;}
.footer-nav{grid-area:nav;}
.footer-contact-block{grid-area:contact;justify-self:center;}
.footer-cookie-block{grid-area:cookie;justify-self:end;}
.footer-meta-block{grid-area:meta;}
.footer-social-block{grid-area:social;justify-self:end;}
.footer-nav{width:100%;grid-template-columns:repeat(2, minmax(max-content, 1fr));column-gap:clamp(20px, 3vw, 42px);}}
@media (max-width: 1120px) and (min-width: 761px){
.site-footer--compact .footer-main{grid-template-columns:minmax(150px, .8fr) minmax(260px, 1.2fr);grid-template-areas:"brand nav"
            "contact cookie"
            "meta social";gap:16px 28px;}
.footer-brand-block{grid-area:brand;}
.footer-nav{grid-area:nav;}
.footer-contact-block{grid-area:contact;}
.footer-cookie-block{grid-area:cookie;justify-content:flex-end;}
.footer-meta-block{grid-area:meta;}
.footer-social-block{grid-area:social;justify-content:flex-end;}}
/* chat tylko dla pakietów Opieka i Premium */
.dashboard-panel-nav .dashboard-panel-nav__locked{position:relative;min-width:0;min-height:36px;height:100%;padding:8px 12px;border:0;border-radius:11px;display:flex;align-items:center;justify-content:flex-start;background:#f1eef0;color:#a59ca1;cursor:not-allowed;font-size:13px;font-weight:800;line-height:1.15;text-align:left;user-select:none;}
.dashboard-panel-nav .dashboard-panel-nav__locked::after{content:attr(data-tooltip);position:absolute;z-index:50;left:calc(100% + 12px);top:50%;width:min(280px, 50vw);padding:11px 13px;border:1px solid var(--line);border-radius:12px;background:var(--ink);color:var(--white);box-shadow:var(--shadow-sm);font-size:12px;font-weight:700;line-height:1.45;opacity:0;pointer-events:none;transform:translate(6px, -50%);transition:opacity .18s ease, transform .18s ease;}
.dashboard-panel-nav .dashboard-panel-nav__locked:hover::after,
.dashboard-panel-nav .dashboard-panel-nav__locked:focus-visible::after{opacity:1;transform:translate(0, -50%);}
.patient-chat-locked{min-height:100%;display:grid;place-content:center;justify-items:center;gap:14px;padding:48px;text-align:center;}
.patient-chat-locked h2{max-width:700px;margin:0;}
.patient-chat-locked p{max-width:620px;margin:0 0 6px;color:var(--muted);}
@media (max-width: 1024px){
.dashboard-panel-nav .dashboard-panel-nav__locked::after{left:12px;right:12px;top:calc(100% + 8px);width:auto;transform:translateY(-6px);}
.dashboard-panel-nav .dashboard-panel-nav__locked:hover::after,
    .dashboard-panel-nav .dashboard-panel-nav__locked:focus-visible::after{transform:translateY(0);}}
@media (min-width: 1025px){
body.patient-panel-viewport .dashboard-sidebar__panel,
    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav{overflow:visible;}
body.patient-panel-viewport .dashboard-panel-nav__locked:hover,
    body.patient-panel-viewport .dashboard-panel-nav__locked:focus-visible{z-index:60;}}
/* końcowy układ stopki i czytelna podpowiedź zablokowanego czatu */
@media (min-width: 1121px){
.site-footer--compact .footer-main{position:relative;grid-template-columns:140px minmax(190px, .9fr) minmax(255px, 1fr) 105px 95px minmax(270px, 1.15fr);grid-template-areas:"brand nav contact social cookie meta";column-gap:clamp(18px, 2vw, 32px);row-gap:0;align-items:center;}
.footer-brand-block{grid-area:brand;}
.footer-nav{grid-area:nav;}
.footer-contact-block{grid-area:contact;justify-self:start;}
.footer-social-block{grid-area:social;justify-self:center;justify-content:center;}
.footer-cookie-block{grid-area:cookie;justify-self:center;justify-content:center;}
.footer-meta-block{grid-area:meta;justify-self:end;display:grid;gap:4px;text-align:right;}
.footer-meta-block span{display:block;}}
.footer-cookie-block .footer-cookie-settings{font-weight:700;}
/* Blokada czatu w pakiecie Start: kafelek pozostaje nieruchomy, opis pojawia się przy kursorze. */
.dashboard-panel-nav .dashboard-panel-nav__locked,
.dashboard-panel-nav .dashboard-panel-nav__locked:hover,
.dashboard-panel-nav .dashboard-panel-nav__locked:focus,
.dashboard-panel-nav .dashboard-panel-nav__locked:focus-visible{position:relative;min-width:0;min-height:36px;height:100%;padding:8px 12px;border:0 !important;border-radius:11px;display:flex;align-items:center;justify-content:flex-start;background:#f1eef0 !important;color:#a59ca1 !important;box-shadow:none !important;transform:none !important;outline:none !important;cursor:default !important;transition:none !important;font-size:13px;font-weight:800;line-height:1.15;text-align:left;user-select:none;}
.dashboard-panel-nav .dashboard-panel-nav__locked::before,
.dashboard-panel-nav .dashboard-panel-nav__locked::after{content:none !important;display:none !important;}
.dashboard-panel-nav__locked-label{display:block;min-width:0;}
#patient-chat-cursor-tooltip[hidden]{display:none !important;}
#patient-chat-cursor-tooltip{position:fixed !important;z-index:2147483647 !important;box-sizing:border-box !important;display:block !important;width:max-content !important;max-width:min(330px, calc(100vw - 24px)) !important;margin:0 !important;padding:12px 15px !important;border:2px solid #9b9b9f !important;border-radius:14px !important;background:#ededee !important;color:#2f3033 !important;box-shadow:0 12px 30px rgba(30, 31, 34, .18) !important;font-family:inherit !important;font-size:13px !important;font-weight:700 !important;line-height:1.45 !important;letter-spacing:0 !important;text-align:left !important;white-space:normal !important;pointer-events:none !important;opacity:0 !important;visibility:hidden !important;transform:translateY(9px) scale(.955) !important;transform-origin:top left !important;filter:blur(2px) !important;will-change:opacity, transform, filter !important;transition:opacity .20s cubic-bezier(.22, 1, .36, 1),
        transform .24s cubic-bezier(.22, 1, .36, 1),
        filter .18s ease,
        visibility 0s linear .24s !important;}
#patient-chat-cursor-tooltip.is-visible{opacity:1 !important;visibility:visible !important;transform:translateY(0) scale(1) !important;filter:blur(0) !important;transition-delay:0s !important;}
@media (prefers-reduced-motion: reduce){
#patient-chat-cursor-tooltip{transition:none !important;transform:none !important;}}
/* zakres organizacyjny chatu w pakiecie Start. */
.patient-chat-scope-note{margin:0 18px 14px;padding:12px 14px;border:1px solid #d6d1ce;border-radius:14px;display:grid;gap:4px;background:#f4f2f1;color:#625b58;}
.patient-chat-scope-note strong{color:#332c2f;font-size:12px;}
.patient-chat-scope-note span{font-size:10px;line-height:1.55;}
.patient-chat-page.is-organizational{grid-template-rows:auto auto minmax(360px, 1fr) auto;}
/* wniosek o tygodniowe zawieszenie subskrypcji. */
.support-pause-card{display:grid;gap:10px;margin:0 0 18px;padding:16px;border:1px solid rgba(109, 43, 76, .16);border-radius:16px;background:linear-gradient(145deg, rgba(255,255,255,.96), rgba(248,241,245,.96));box-shadow:0 12px 28px rgba(47, 24, 36, .06);}
.support-pause-card.is-available{border-color:rgba(109, 43, 76, .28);}
.support-pause-card.is-locked{background:rgba(248, 246, 247, .94);}
.support-pause-card h3,
.support-pause-card p{margin:0;}
.support-pause-card h3{font-family:var(--font-heading);font-size:19px;line-height:1.15;}
.support-pause-card p,
.support-pause-card__status{color:var(--text-muted);font-size:12px;line-height:1.55;}
.support-pause-request-form{display:grid;gap:11px;margin-top:2px;}
.support-pause-request-form .dashboard-field{margin:0;}
.support-pause-request-form textarea{min-height:88px;resize:vertical;}
.support-pause-card__status{padding:11px 12px;border:1px solid rgba(109, 43, 76, .12);border-radius:11px;background:rgba(255,255,255,.8);}
/* chat po wygaśnięciu subskrypcji i czytelna ścieżka kontaktu. */
.dashboard-panel-nav a.dashboard-panel-nav__locked,
.dashboard-panel-nav a.dashboard-panel-nav__locked:hover,
.dashboard-panel-nav a.dashboard-panel-nav__locked:focus-visible{cursor:pointer !important;text-decoration:none;}
.patient-chat-page.is-expired{grid-template-rows:auto auto minmax(360px, 1fr) auto;}
.patient-chat-expired-badge{width:fit-content;margin-top:12px !important;padding:6px 10px;border:1px solid rgba(145, 65, 65, .25);border-radius:999px;display:inline-flex !important;align-items:center;background:#f6e9e9;color:#8c3636 !important;font-size:10px !important;font-weight:900;line-height:1.2;letter-spacing:.05em;text-transform:uppercase;}
.patient-chat-scope-note--expired{border-color:rgba(145, 65, 65, .2);background:linear-gradient(145deg, #fbf3f3, #f7eeee);}
.patient-chat-scope-note--expired strong{color:#7d3030;}
.patient-chat-scope-note--expired a{width:fit-content;margin-top:4px;color:var(--green-800);font-size:10px;font-weight:850;text-decoration:underline;text-underline-offset:3px;}
/* formularz startowy po zakupie */
.intake-form{display:grid;gap:28px;}
.intake-form.reveal{opacity:1;transform:none;}
.intake-section{display:grid;gap:16px;padding-bottom:24px;border-bottom:1px solid rgba(80, 47, 67, .12);}
.intake-section:last-of-type{border-bottom:0;}
.intake-section h3{margin:0;color:var(--color-ink, #2c1e26);font-size:clamp(1.25rem, 2vw, 1.65rem);}
.intake-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:16px;}
.intake-form label{display:grid;gap:8px;color:var(--color-ink, #2c1e26);font-weight:700;}
.intake-form input,
.intake-form select,
.intake-form textarea{width:100%;border:1px solid rgba(80, 47, 67, .18);border-radius:18px;padding:13px 15px;background:rgba(255,255,255,.9);color:var(--color-ink, #2c1e26);font:inherit;font-weight:500;box-shadow:inset 0 1px 0 rgba(255,255,255,.7);}
.intake-form textarea{resize:vertical;min-height:96px;}
.intake-form input:focus,
.intake-form select:focus,
.intake-form textarea:focus{outline:3px solid rgba(109,43,76,.14);border-color:rgba(109,43,76,.55);}
.intake-note,
.form-hint{margin:0;color:var(--color-muted, #7e6f78);font-size:.94rem;font-weight:500;}
.intake-section--training{padding:22px;border-radius:24px;background:linear-gradient(135deg, rgba(109,43,76,.08), rgba(210,174,112,.1));border:1px solid rgba(109,43,76,.14);}
.form-alert--success{border:1px solid rgba(44, 130, 92, .24);background:rgba(44, 130, 92, .1);color:#1f6848;}
.intake-success-alert{display:flex;flex-direction:column;align-items:flex-start;gap:22px;}
.intake-success-alert .button{margin-top:2px;}
@media (max-width: 760px){
.intake-grid{grid-template-columns:1fr;}}
.admin-client-note-section--pinned{border-color:rgba(123, 92, 255, 0.45);background:rgba(123, 92, 255, 0.08);}
.admin-client-note-section em{display:inline-flex;width:max-content;margin-top:0.25rem;padding:0.15rem 0.45rem;border-radius:999px;background:rgba(123, 92, 255, 0.14);color:#5f46d6;font-size:0.72rem;font-style:normal;font-weight:800;}
/* tematy zgłoszeń, zakup pakietu. */
.support-topic-lock{margin:-8px 0 14px;padding:14px 16px;border:1px dashed rgba(123, 45, 92, .28);border-radius:18px;background:rgba(123, 45, 92, .06);color:var(--muted);}
.support-topic-lock strong{display:block;color:var(--ink);margin-bottom:4px;}
.support-topic-lock p{margin:0;font-size:13px;line-height:1.45;}
.purchase-page{min-height:calc(100vh - var(--header-height));display:grid;align-items:center;}
.purchase-layout{max-width:880px;}
.purchase-card{padding:clamp(28px, 5vw, 54px);}
.purchase-card h1{margin:8px 0 18px;font-family:var(--font-serif);font-size:clamp(36px, 6vw, 64px);letter-spacing:-.04em;}
.selected-plan--purchase{margin:22px 0;}
.purchase-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px;}
/* dopracowanie selecta i toastów w centrum pomocy */
.support-new-thread .dashboard-field select{width:100%;min-height:56px;padding:0 48px 0 16px;border:1px solid rgba(138, 66, 100, .18);border-radius:16px;appearance:none;-webkit-appearance:none;background:linear-gradient(45deg, transparent 50%, var(--green-800) 50%) calc(100% - 24px) 50% / 7px 7px no-repeat,
        linear-gradient(135deg, var(--green-800) 50%, transparent 50%) calc(100% - 18px) 50% / 7px 7px no-repeat,
        linear-gradient(180deg, rgba(255,255,255,.96), rgba(250,246,248,.96));color:var(--ink);box-shadow:inset 0 1px 0 rgba(255,255,255,.8), 0 10px 22px rgba(49, 27, 39, .04);cursor:pointer;transition:border-color .18s ease, box-shadow .18s ease, background-color .18s ease;}
.support-new-thread .dashboard-field select:hover{border-color:rgba(123, 45, 92, .34);box-shadow:inset 0 1px 0 rgba(255,255,255,.85), 0 14px 28px rgba(49, 27, 39, .06);}
.support-new-thread .dashboard-field select:focus{outline:none;border-color:rgba(123, 45, 92, .52);box-shadow:0 0 0 4px rgba(123, 45, 92, .08), 0 14px 28px rgba(49, 27, 39, .06);}
.support-new-thread .dashboard-field select option:disabled{color:#9b8f96;}
.support-new-thread .dashboard-field select:disabled{opacity:.6;cursor:not-allowed;}
.dashboard-content--chat > .dashboard-toast{margin-bottom:0;}
/* Pomoc - lista zgłoszeń po prawej bez ruszania głównego sidebara */
.support-new-thread [data-support-custom-subject][hidden]{display:none !important;}
body.patient-support-viewport .support-center-layout--three{grid-template-columns:minmax(220px, 285px) minmax(0, 1fr) minmax(220px, 285px);gap:16px;width:100%;}
body.patient-support-viewport .support-new-thread-panel,
body.patient-support-viewport .support-thread-list-panel{min-height:0;padding:0;overflow:hidden;display:flex;flex-direction:column;}
body.patient-support-viewport .support-new-thread-panel__head,
body.patient-support-viewport .support-thread-list-panel .support-thread-sidebar__head{padding:18px 18px 14px;}
body.patient-support-viewport .support-new-thread-panel__head h2,
body.patient-support-viewport .support-thread-list-panel .support-thread-sidebar__head h2{margin-top:8px;font-size:clamp(22px, 1.7vw, 28px);}
body.patient-support-viewport .support-new-thread-panel__head p{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.45;}
body.patient-support-viewport .support-new-thread-panel .support-new-thread{flex:0 0 auto;min-height:0;padding:16px 18px 18px;border-bottom:0;display:grid;grid-auto-rows:max-content;align-content:start;gap:14px;overflow:visible;}
body.patient-support-viewport .support-new-thread-panel .support-new-thread .dashboard-field{min-height:0;}
body.patient-support-viewport .support-new-thread-panel .support-new-thread .dashboard-field select{min-height:52px;height:52px;}
body.patient-support-viewport .support-new-thread-panel .support-new-thread textarea{min-height:128px;max-height:220px;}
body.patient-support-viewport .support-new-thread-panel .support-new-thread .button{min-height:52px;align-self:start;margin-top:4px;padding-block:13px;}
body.patient-support-viewport .support-thread-list-panel .support-thread-list{flex:1 1 auto;min-height:0;padding:12px;overflow-y:auto;}
body.patient-support-viewport .support-conversation{min-width:0;}
@media (max-width: 1240px){
body.patient-support-viewport .support-center-layout--three{grid-template-columns:minmax(210px, 260px) minmax(0, 1fr) minmax(210px, 260px);gap:14px;}}
@media (max-width: 1120px){
body.patient-support-viewport .support-center-layout--three{height:auto;grid-template-columns:1fr;}
body.patient-support-viewport .support-new-thread-panel,
    body.patient-support-viewport .support-thread-list-panel{max-height:none;}
body.patient-support-viewport .support-thread-list-panel .support-thread-list{max-height:320px;}}
/* Pomoc - przywrócony sidebar i używalny chat z osobnym panelem wątków po prawej */
.support-new-thread [data-support-custom-subject][hidden]{display:none !important;}
body.patient-support-viewport .dashboard-layout--support.container,
body.patient-support-viewport .dashboard-layout--support{width:min(calc(100vw - 28px), 1560px);}
body.patient-support-viewport .dashboard-layout--support{gap:18px;}
body.patient-support-viewport .dashboard-layout--support .dashboard-sidebar{flex:0 0 auto;}
body.patient-support-viewport .support-center-layout--three{width:100%;min-width:0;grid-template-columns:minmax(230px, 260px) minmax(340px, 1fr) minmax(200px, 230px);gap:14px;}
body.patient-support-viewport .support-new-thread-panel,
body.patient-support-viewport .support-thread-list-panel{min-width:0;min-height:0;padding:0;overflow:hidden;display:flex;flex-direction:column;}
body.patient-support-viewport .support-new-thread-panel__head,
body.patient-support-viewport .support-thread-list-panel .support-thread-sidebar__head{padding:18px 18px 14px;}
body.patient-support-viewport .support-new-thread-panel__head h2,
body.patient-support-viewport .support-thread-list-panel .support-thread-sidebar__head h2{margin-top:8px;font-size:clamp(23px, 1.65vw, 30px);line-height:1.05;}
body.patient-support-viewport .support-new-thread-panel__head p{margin:8px 0 0;color:var(--muted);font-size:12px;line-height:1.45;}
body.patient-support-viewport .support-new-thread-panel .support-new-thread{flex:0 0 auto;min-height:0;padding:16px 18px 18px;border-bottom:0;display:grid;grid-auto-rows:max-content;align-content:start;gap:14px;overflow:visible;}
body.patient-support-viewport .support-new-thread-panel .support-new-thread .dashboard-field{margin:0;min-height:0;}
body.patient-support-viewport .support-new-thread-panel .support-new-thread .dashboard-field select{min-height:52px;height:52px;}
body.patient-support-viewport .support-new-thread-panel .support-new-thread textarea{min-height:126px;max-height:220px;}
body.patient-support-viewport .support-new-thread-panel .support-new-thread .button{width:100%;min-height:52px;align-self:start;margin-top:4px;padding-block:13px;}
body.patient-support-viewport .support-conversation{min-width:0;}
body.patient-support-viewport .support-conversation__header{grid-template-columns:minmax(0, 1fr) auto;align-items:start;}
body.patient-support-viewport .support-conversation__header h2{max-width:100%;}
body.patient-support-viewport .support-thread-list-panel .support-thread-list{flex:1 1 auto;min-height:0;padding:12px;overflow-y:auto;}
@media (min-width: 1280px){
body.patient-support-viewport .dashboard-layout--support{grid-template-columns:minmax(310px, 340px) minmax(0, 1fr);}
body.patient-support-viewport .support-center-layout--three{grid-template-columns:minmax(250px, 285px) minmax(420px, 1fr) minmax(220px, 255px);gap:16px;}}
@media (min-width: 1480px){
body.patient-support-viewport .dashboard-layout--support{grid-template-columns:minmax(320px, 350px) minmax(0, 1fr);gap:22px;}
body.patient-support-viewport .support-center-layout--three{grid-template-columns:minmax(280px, 320px) minmax(520px, 1fr) minmax(250px, 300px);gap:18px;}}
@media (max-width: 1120px){
body.patient-support-viewport .dashboard-layout--support.container,
    body.patient-support-viewport .dashboard-layout--support{width:min(calc(100% - 28px), var(--container));}
body.patient-support-viewport .support-center-layout--three{height:auto;grid-template-columns:1fr;}
body.patient-support-viewport .support-new-thread-panel,
    body.patient-support-viewport .support-thread-list-panel{max-height:none;}
body.patient-support-viewport .support-thread-list-panel .support-thread-list{max-height:320px;}
body.patient-support-viewport .support-conversation{height:620px;min-height:620px;}}
/* Pomoc - finalne wyrównanie: sidebar bez ściskania, szeroki chat i lista wątków po prawej */
@media (min-width: 1180px){
body.patient-support-viewport .dashboard-layout--support.container,
    body.patient-support-viewport .dashboard-layout--support{width:calc(100vw - 24px) !important;max-width:1680px !important;margin-left:auto !important;margin-right:auto !important;grid-template-columns:300px minmax(0, 1fr) !important;gap:14px !important;}
body.patient-support-viewport .dashboard-layout--support .dashboard-sidebar{width:300px !important;min-width:300px !important;max-width:300px !important;flex:0 0 300px !important;}
body.patient-support-viewport .dashboard-sidebar .dashboard-panel-nav{display:grid !important;grid-template-rows:repeat(var(--patient-sidebar-items, 11), minmax(0, 1fr)) !important;gap:5px !important;padding:12px !important;min-height:0 !important;overflow:hidden !important;}
body.patient-support-viewport .dashboard-sidebar .dashboard-panel-nav a,
    body.patient-support-viewport .dashboard-sidebar .dashboard-panel-nav button{box-sizing:border-box !important;width:100% !important;height:100% !important;min-height:0 !important;align-self:stretch !important;justify-self:stretch !important;padding:6px 12px !important;display:flex !important;align-items:center !important;justify-content:flex-start !important;border-radius:11px !important;line-height:1.15 !important;}
body.patient-support-viewport .dashboard-sidebar .dashboard-panel-nav a.is-active,
    body.patient-support-viewport .dashboard-sidebar .dashboard-panel-nav button.is-active{min-height:0 !important;height:100% !important;}
body.patient-support-viewport .support-center-layout--three{width:100% !important;min-width:0 !important;height:100% !important;display:grid !important;grid-template-columns:minmax(260px, 285px) minmax(430px, 1fr) minmax(210px, 240px) !important;gap:12px !important;align-items:stretch !important;overflow:hidden !important;}
body.patient-support-viewport .support-new-thread-panel{min-width:0 !important;max-width:none !important;}
body.patient-support-viewport .support-conversation{min-width:430px !important;width:100% !important;max-width:none !important;}
body.patient-support-viewport .support-thread-list-panel{min-width:210px !important;max-width:240px !important;}
body.patient-support-viewport .support-conversation__header h2{font-size:clamp(24px, 2vw, 34px) !important;line-height:1.08 !important;}
body.patient-support-viewport .support-conversation .patient-chat-page__composer{padding:16px 18px 18px !important;}
body.patient-support-viewport .support-conversation .patient-chat-page__composer textarea{width:100% !important;min-height:86px !important;max-height:160px !important;}
body.patient-support-viewport .support-new-thread-panel .support-new-thread .button{width:100% !important;min-height:52px !important;height:auto !important;border-radius:999px !important;padding:13px 18px !important;margin-top:8px !important;}}
@media (min-width: 1180px) and (max-width: 1320px){
body.patient-support-viewport .dashboard-layout--support.container,
    body.patient-support-viewport .dashboard-layout--support{width:calc(100vw - 16px) !important;grid-template-columns:292px minmax(0, 1fr) !important;gap:12px !important;}
body.patient-support-viewport .dashboard-layout--support .dashboard-sidebar{width:292px !important;min-width:292px !important;max-width:292px !important;flex-basis:292px !important;}
body.patient-support-viewport .support-center-layout--three{grid-template-columns:minmax(250px, 270px) minmax(400px, 1fr) minmax(200px, 220px) !important;gap:10px !important;}
body.patient-support-viewport .support-conversation{min-width:400px !important;}}
@media (max-width: 1179px){
body.patient-support-viewport .support-center-layout--three{grid-template-columns:1fr !important;height:auto !important;overflow:visible !important;}
body.patient-support-viewport .support-conversation{min-width:0 !important;height:620px !important;min-height:620px !important;}}
/* sidebar podopiecznego po dodaniu Pomocy jako 11. pozycji.
   Menu ma równe kafle dla wszystkich elementów; ostatnia pozycja nie wpada już w auto-row/pigułkę. */
@media (min-width: 1025px){
body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav{grid-template-rows:repeat(var(--patient-sidebar-items, 11), minmax(0, 1fr)) !important;grid-auto-rows:minmax(0, 1fr) !important;}
body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav a,
    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav button,
    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav .dashboard-panel-nav__locked{box-sizing:border-box !important;width:100% !important;height:100% !important;min-height:0 !important;display:flex !important;align-items:center !important;justify-content:flex-start !important;}
body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav a.is-active,
    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav button.is-active{height:100% !important;min-height:0 !important;padding:8px 12px !important;border-radius:11px !important;}}
/* temat zgłoszenia jako własny dropdown z tooltipem dla zablokowanych opcji */
.support-topic-field{position:relative;z-index:5;}
.support-topic-select{width:100%;min-height:56px;padding:0 48px 0 16px;border:1px solid rgba(138, 66, 100, .18);border-radius:16px;background:linear-gradient(180deg, rgba(255,255,255,.96), rgba(250,246,248,.96));color:var(--ink);box-shadow:inset 0 1px 0 rgba(255,255,255,.8), 0 10px 22px rgba(49, 27, 39, .04);cursor:pointer;text-align:left;font:inherit;display:flex;align-items:center;justify-content:space-between;gap:14px;transition:border-color .18s ease, box-shadow .18s ease, background-color .18s ease;}
.support-topic-select:hover{border-color:rgba(123, 45, 92, .34);box-shadow:inset 0 1px 0 rgba(255,255,255,.85), 0 14px 28px rgba(49, 27, 39, .06);}
.support-topic-select:focus-visible,
.support-topic-field.has-error .support-topic-select{outline:none;border-color:rgba(123, 45, 92, .52);box-shadow:0 0 0 4px rgba(123, 45, 92, .08), 0 14px 28px rgba(49, 27, 39, .06);}
.support-topic-select i{width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:7px solid var(--green-800);flex:0 0 auto;}
.support-topic-menu{position:absolute;left:0;right:0;top:calc(100% + 8px);padding:8px;border:1px solid rgba(138, 66, 100, .18);border-radius:18px;background:rgba(255, 252, 254, .98);box-shadow:0 18px 42px rgba(49, 27, 39, .14);z-index:40;max-height:290px;overflow-y:auto;}
.support-topic-option{width:100%;border:0;border-radius:12px;background:transparent;color:var(--ink);cursor:pointer;display:block;padding:11px 12px;text-align:left;font:inherit;font-weight:700;transition:background .16s ease, color .16s ease, transform .16s ease;}
.support-topic-option:hover,
.support-topic-option.is-selected{background:rgba(123, 45, 92, .10);color:var(--green-800);}
.support-topic-option.is-disabled{color:rgba(49, 27, 39, .38);cursor:not-allowed;background:rgba(49, 27, 39, .035);text-decoration:none;}
.support-topic-option.is-disabled:hover{background:rgba(49, 27, 39, .055);color:rgba(49, 27, 39, .42);transform:none;}
.support-topic-error{display:block;margin-top:8px;color:#9f2450;font-weight:800;}
.support-topic-hover-tooltip{position:fixed;z-index:9999;max-width:300px;padding:12px 14px;border:1px solid rgba(123, 45, 92, .18);border-radius:16px;background:rgba(255, 252, 254, .98);box-shadow:0 18px 40px rgba(49, 27, 39, .18);color:var(--ink);pointer-events:none;}
.support-topic-hover-tooltip strong,
.support-topic-hover-tooltip span{display:block;}
.support-topic-hover-tooltip strong{margin-bottom:4px;font-size:13px;font-weight:900;}
.support-topic-hover-tooltip span{color:var(--muted);font-size:12px;line-height:1.45;}
/* prawdziwy custom dropdown w Pomocy, bez natywnego kanciastego selecta */
.support-topic-field{position:relative;overflow:visible;}
.support-topic-combobox{position:relative;width:100%;}
.support-topic-field .support-topic-select{appearance:none;-webkit-appearance:none;width:100%;min-height:56px;padding:0 50px 0 18px;border:1px solid rgba(123, 45, 92, .18);border-radius:18px;background:linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(251, 246, 249, .98));color:var(--ink);box-shadow:inset 0 1px 0 rgba(255,255,255,.92),
        0 12px 26px rgba(49, 27, 39, .055);display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left;cursor:pointer;font:inherit;line-height:1.25;}
.support-topic-field .support-topic-select:hover{border-color:rgba(123, 45, 92, .34);box-shadow:0 0 0 4px rgba(123, 45, 92, .045),
        0 14px 28px rgba(49, 27, 39, .07);}
.support-topic-field .support-topic-select:focus-visible,
.support-topic-field.has-error .support-topic-select{outline:none;border-color:rgba(123, 45, 92, .56);box-shadow:0 0 0 4px rgba(123, 45, 92, .10),
        0 14px 28px rgba(49, 27, 39, .07);}
.support-topic-field .support-topic-select i{position:absolute;right:18px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:7px solid var(--green-800);pointer-events:none;}
.support-topic-field .support-topic-menu{position:absolute;left:0;right:0;top:calc(100% + 10px);z-index:300;max-height:330px;overflow-y:auto;padding:9px;border:1px solid rgba(123, 45, 92, .18);border-radius:22px;background:rgba(255, 252, 254, .98);box-shadow:0 24px 60px rgba(49, 27, 39, .18),
        inset 0 1px 0 rgba(255,255,255,.88);backdrop-filter:blur(12px);}
.support-topic-field .support-topic-menu[hidden]{display:none !important;}
.support-topic-field .support-topic-option{position:relative;width:100%;min-height:42px;padding:11px 13px;border:0;border-radius:14px;background:transparent;color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:flex-start;text-align:left;font:inherit;font-weight:800;line-height:1.25;user-select:none;outline:none;transition:background-color .15s ease, color .15s ease, transform .15s ease;}
.support-topic-field .support-topic-option:hover,
.support-topic-field .support-topic-option:focus-visible,
.support-topic-field .support-topic-option.is-selected{background:rgba(123, 45, 92, .11);color:var(--green-800);}
.support-topic-field .support-topic-option:not(.is-disabled):active{transform:scale(.992);}
.support-topic-field .support-topic-option.is-disabled{color:rgba(49, 27, 39, .38);cursor:not-allowed;background:rgba(49, 27, 39, .035);}
.support-topic-field .support-topic-option.is-disabled:hover,
.support-topic-field .support-topic-option.is-disabled:focus-visible{background:rgba(49, 27, 39, .06);color:rgba(49, 27, 39, .44);}
.support-topic-field .support-topic-option-tooltip-fallback{display:none;position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);width:min(280px, 80vw);padding:12px 14px;border:1px solid rgba(123, 45, 92, .18);border-radius:16px;background:rgba(255, 252, 254, .98);box-shadow:0 18px 40px rgba(49, 27, 39, .18);color:var(--ink);font-style:normal;z-index:320;}
.support-topic-field:not(.is-custom-ready) .support-topic-option.is-disabled:hover .support-topic-option-tooltip-fallback{display:block;}
.support-topic-field .support-topic-option-tooltip-fallback strong,
.support-topic-field .support-topic-option-tooltip-fallback small{display:block;}
.support-topic-field .support-topic-option-tooltip-fallback strong{margin-bottom:4px;font-size:13px;font-weight:900;}
.support-topic-field .support-topic-option-tooltip-fallback small{color:var(--muted);font-size:12px;line-height:1.45;}
.support-topic-hover-tooltip{position:fixed;z-index:99999;max-width:310px;padding:12px 14px;border:1px solid rgba(123, 45, 92, .20);border-radius:16px;background:rgba(255, 252, 254, .99);box-shadow:0 18px 42px rgba(49, 27, 39, .20);color:var(--ink);pointer-events:none;}
.support-topic-hover-tooltip[hidden]{display:none !important;}
.support-topic-hover-tooltip strong,
.support-topic-hover-tooltip span{display:block;}
.support-topic-hover-tooltip strong{margin-bottom:4px;font-size:13px;font-weight:900;}
.support-topic-hover-tooltip span{color:var(--muted);font-size:12px;line-height:1.45;}
/* spójny wygląd wszystkich list wyboru w panelu i formularzach */
select:not(.ui-select-source):not([multiple]){appearance:none;-webkit-appearance:none;width:100%;min-height:56px;padding:0 50px 0 18px;border:1px solid rgba(123, 45, 92, .18);border-radius:18px;background:linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(251, 246, 249, .98));color:var(--ink);box-shadow:inset 0 1px 0 rgba(255,255,255,.92),
        0 12px 26px rgba(49, 27, 39, .055);cursor:pointer;}
.ui-select-source{position:absolute !important;width:1px !important;height:1px !important;min-width:1px !important;min-height:1px !important;margin:0 !important;padding:0 !important;border:0 !important;opacity:0 !important;pointer-events:none !important;overflow:hidden !important;}
.ui-select{position:relative;z-index:1;width:100%;min-width:0;}
.ui-select.is-open{z-index:700;}
.ui-select__button{position:relative;width:100%;min-height:56px;padding:0 50px 0 18px;border:1px solid rgba(123, 45, 92, .18);border-radius:18px;background:linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(251, 246, 249, .98));color:var(--ink);box-shadow:inset 0 1px 0 rgba(255,255,255,.92),
        0 12px 26px rgba(49, 27, 39, .055);display:flex;align-items:center;justify-content:space-between;gap:14px;text-align:left;cursor:pointer;font:inherit;font-weight:700;line-height:1.25;transition:border-color .16s ease, box-shadow .16s ease, background .16s ease, transform .16s ease;}
.ui-select__button:hover,
.ui-select.is-open .ui-select__button{border-color:rgba(123, 45, 92, .36);box-shadow:0 0 0 4px rgba(123, 45, 92, .055),
        0 14px 28px rgba(49, 27, 39, .075);}
.ui-select__button:focus-visible,
.ui-select.has-error .ui-select__button{outline:none;border-color:rgba(123, 45, 92, .58);box-shadow:0 0 0 4px rgba(123, 45, 92, .11),
        0 14px 28px rgba(49, 27, 39, .075);}
.ui-select__button:disabled{cursor:not-allowed;opacity:.62;}
.ui-select__current{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.ui-select__button i{position:absolute;right:18px;top:50%;transform:translateY(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:7px solid var(--green-800);pointer-events:none;transition:transform .16s ease;}
.ui-select.is-open .ui-select__button i{transform:translateY(-50%) rotate(180deg);}
.ui-select__menu{position:absolute;left:0;right:0;top:calc(100% + 10px);z-index:710;max-height:min(340px, 52vh);overflow-y:auto;padding:9px;border:1px solid rgba(123, 45, 92, .18);border-radius:22px;background:rgba(255, 252, 254, .985);box-shadow:0 24px 60px rgba(49, 27, 39, .18),
        inset 0 1px 0 rgba(255,255,255,.88);backdrop-filter:blur(12px);}
.ui-select__menu[hidden]{display:none !important;}
.ui-select__group-label{padding:10px 12px 6px;color:var(--green-700);font-size:11px;font-weight:950;letter-spacing:.08em;text-transform:uppercase;}
.ui-select__option{width:100%;min-height:42px;padding:11px 13px;border:0;border-radius:14px;background:transparent;color:var(--ink);cursor:pointer;display:flex;align-items:center;justify-content:flex-start;text-align:left;font:inherit;font-weight:800;line-height:1.25;user-select:none;outline:none;transition:background-color .15s ease, color .15s ease, transform .15s ease;}
.ui-select__option:hover,
.ui-select__option:focus-visible,
.ui-select__option.is-selected{background:rgba(123, 45, 92, .11);color:var(--green-800);}
.ui-select__option:not(.is-disabled):active{transform:scale(.992);}
.ui-select__option.is-placeholder{color:var(--muted);font-weight:750;}
.ui-select__option.is-disabled{color:rgba(49, 27, 39, .38);cursor:not-allowed;background:rgba(49, 27, 39, .035);}
.ui-select__empty{padding:12px 13px;color:var(--muted);font-size:13px;font-weight:750;}
.dashboard-field .ui-select,
.support-new-thread .ui-select,
.intake-form .ui-select,
.privacy-request-card .ui-select,
.contact-card .ui-select{margin-top:8px;}
label > .ui-select{margin-top:8px;}
/* oferta stacjonarna - ten sam system kart co oferta online */
.offer-stationary-link{display:block;margin-top:12px;text-align:center;color:var(--wine);font-size:13px;font-weight:800;text-decoration:none;}
.offer-stationary-link:hover,.offer-stationary-link:focus-visible{text-decoration:underline;}
.offer-stationary-link--below{width:fit-content;margin:18px auto 0;padding:2px 8px;}
.stationary-offer__lead{max-width:690px;margin:18px auto 0;color:var(--muted);font-size:clamp(15px,1.85vw,18px);line-height:1.72;}
.stationary-pricing-grid{margin-top:28px;align-items:stretch;gap:22px;}
.stationary-pricing-grid .price-card{display:flex;flex-direction:column;padding:30px 28px 26px;background:linear-gradient(180deg, rgba(250,244,247,.88), #fff 42%);}
.stationary-pricing-grid .price-card h3{margin-bottom:12px;font-size:clamp(23px,2.3vw,29px);}
.stationary-pricing-grid .price-card .price{margin-bottom:14px;}
.stationary-pricing-grid .price-card .price-intro{margin-bottom:0;color:#58525a;line-height:1.62;}
.stationary-pricing-grid .price-card ul{flex:1;margin-bottom:16px;padding-top:16px;gap:9px;}
.stationary-pricing-grid .price-card li{font-size:12.5px;line-height:1.48;}
.stationary-card__note{margin:0 0 18px;color:var(--muted);font-size:12.5px;line-height:1.58;}
.stationary-badge{display:inline-flex;width:fit-content;margin:0 0 10px;padding:6px 10px;border-radius:999px;background:var(--wine);color:#fff;font-size:10px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;}
.stationary-badge--soft{background:#f1e5eb;color:var(--wine);}
.stationary-offer-facts{margin-top:30px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid rgba(123,45,92,.14);border-radius:var(--radius-sm);background:linear-gradient(180deg, rgba(248,244,239,.72), rgba(255,255,255,.95));overflow:hidden;}
.stationary-offer-facts article{padding:22px 24px;}
.stationary-offer-facts article+article{border-left:1px solid rgba(123,45,92,.10);}
.stationary-offer-facts strong{display:block;margin-bottom:6px;color:var(--ink);font-size:14px;}
.stationary-offer-facts p{margin:0;color:var(--muted);font-size:13px;line-height:1.62;}
.stationary-offer__online-link{margin-top:24px;}
.stationary-purchase-toast{position:fixed;z-index:1200;top:100px;left:50%;width:min(680px,calc(100% - 30px));padding:15px 18px;border:1px solid rgba(42,120,82,.2);border-radius:15px;background:#eaf7f0;box-shadow:0 18px 45px rgba(31,40,36,.16);display:grid;gap:4px;transform:translate(-50%,-16px);opacity:0;pointer-events:none;transition:opacity .22s ease,transform .22s ease;}
.stationary-purchase-toast.is-visible{opacity:1;transform:translate(-50%,0);}
.stationary-purchase-toast strong{color:#1d6c48;font-size:14px;}
.stationary-purchase-toast span{color:#365347;font-size:12px;line-height:1.45;}
@media(max-width:900px){.stationary-offer-facts{grid-template-columns:1fr;}.stationary-offer-facts article+article{border-left:0;border-top:1px solid rgba(123,45,92,.10);}}

/* ===== 60-checkout-legal.css ===== */
/* pełna, czteroetapowa ścieżka zakupu z Stripe Payment Element i BLIK. */
.checkout-body{background:radial-gradient(circle at 6% 8%, rgba(138, 66, 100, .07), transparent 27rem),
        linear-gradient(180deg, #fff 0%, #fcf9fa 100%);}
.checkout-page{min-height:calc(100svh - var(--header-height));padding:clamp(42px, 5vw, 74px) 0 90px;display:block;}
.checkout-shell{max-width:1180px;}
.checkout-heading{margin-bottom:30px;display:flex;align-items:end;justify-content:space-between;gap:28px;}
.checkout-heading h1{margin:8px 0 10px;font-size:clamp(44px, 6vw, 72px);}
.checkout-heading p:last-child{max-width:680px;margin:0;color:var(--muted);}
.checkout-change-plan{flex:0 0 auto;padding:10px 0;border-bottom:1px solid var(--green-600);color:var(--green-700);font-size:13px;font-weight:850;}
.checkout-steps{margin:0 0 30px;padding:0;display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));list-style:none;border:1px solid var(--line);border-radius:22px;background:rgba(255, 255, 255, .88);box-shadow:var(--shadow-sm);overflow:hidden;}
.checkout-steps li{position:relative;min-height:86px;padding:18px 23px;display:flex;align-items:center;gap:13px;color:var(--muted);}
.checkout-steps li:not(:last-child)::after{content:"";position:absolute;top:18px;right:0;bottom:18px;width:1px;background:var(--line);}
.checkout-steps li > span{width:37px;height:37px;flex:0 0 37px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--muted);font-size:12px;font-weight:900;}
.checkout-steps li div{min-width:0;display:grid;gap:2px;}
.checkout-steps strong{color:inherit;font-size:14px;line-height:1.25;}
.checkout-steps small{font-size:11px;line-height:1.3;}
.checkout-steps li.is-active{background:var(--green-50);color:var(--green-800);}
.checkout-steps li.is-active > span{border-color:var(--green-700);background:var(--green-700);color:#fff;box-shadow:0 8px 20px rgba(109, 43, 76, .22);}
.checkout-steps li.is-complete > span{border-color:rgba(63, 114, 90, .28);background:rgba(63, 114, 90, .10);color:var(--success);}
.checkout-steps li.is-complete > span::before{content:"✓";}
.checkout-steps li.is-complete > span{font-size:0;}
.checkout-steps li.is-complete > span::before{font-size:14px;}
.checkout-grid{display:grid;grid-template-columns:minmax(0, 1fr) 326px;gap:28px;align-items:start;}
.checkout-main{min-width:0;}
.checkout-panel,
.checkout-alert,
.checkout-unavailable{border:1px solid var(--line);border-radius:26px;background:rgba(255, 255, 255, .96);box-shadow:var(--shadow-sm);}
.checkout-panel{padding:clamp(24px, 4vw, 42px);animation:checkout-panel-in .22s ease both;}
@keyframes checkout-panel-in{
from{opacity:0;transform:translateY(8px);}
to{opacity:1;transform:translateY(0);}}
.checkout-panel__head{margin-bottom:28px;display:block;}
.checkout-panel__head h2{margin:0 0 6px;font-size:clamp(30px, 4vw, 44px);}
.checkout-panel__head p{max-width:620px;margin:0;color:var(--muted);font-size:13px;line-height:1.55;}
.checkout-form-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:18px;}
.checkout-field{min-width:0;display:grid;align-content:start;gap:7px;}
.checkout-field--wide{grid-column:1 / -1;}
.checkout-field > span{color:var(--ink);font-size:11px;font-weight:850;letter-spacing:.025em;}
.checkout-field > span b{color:var(--green-700);}
.checkout-field input{width:100%;min-height:52px;padding:12px 15px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);outline:none;transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;}
.checkout-field input:hover{border-color:rgba(138, 66, 100, .34);}
.checkout-field input:focus{border-color:var(--green-600);box-shadow:0 0 0 4px rgba(138, 66, 100, .09);}
.checkout-field input[readonly]{background:#faf8f9;color:#615e64;cursor:default;}
.checkout-field > small{min-height:15px;color:var(--muted);font-size:10px;line-height:1.4;}
.checkout-field.has-error input{border-color:rgba(165, 61, 50, .66);box-shadow:0 0 0 3px rgba(165, 61, 50, .07);}
.checkout-field.has-error > small,
.checkout-consent.has-error > small{color:var(--danger);}
.checkout-section-title{margin:32px 0 17px;padding-top:26px;border-top:1px solid var(--line);}
.checkout-section-title h3{margin:0 0 3px;color:var(--ink);font-size:17px;}
.checkout-section-title p{margin:0;color:var(--muted);font-size:11px;line-height:1.5;}
.checkout-company-toggle{margin-top:22px;padding:15px 17px;display:flex;align-items:flex-start;gap:12px;border:1px solid var(--line);border-radius:16px;background:#fbf9fa;cursor:pointer;}
.checkout-company-toggle input,
.checkout-consent input{width:18px;height:18px;flex:0 0 18px;margin:2px 0 0;accent-color:var(--green-700);}
.checkout-company-toggle span{display:grid;gap:2px;}
.checkout-company-toggle strong{color:var(--ink);font-size:12px;}
.checkout-company-toggle small{color:var(--muted);font-size:10px;}
.checkout-company-fields{margin-top:16px;padding:18px;display:grid;grid-template-columns:minmax(0, 1.4fr) minmax(180px, .6fr);gap:16px;border:1px dashed rgba(138, 66, 100, .28);border-radius:18px;background:var(--green-50);}
.checkout-company-fields[hidden]{display:none;}
.checkout-company-address-toggle{grid-column:1 / -1;padding:13px 14px;display:flex;align-items:flex-start;gap:11px;border:1px solid rgba(138,66,100,.14);border-radius:14px;background:rgba(255,255,255,.72);cursor:pointer;}
.checkout-company-address-toggle input{width:17px;height:17px;flex:0 0 17px;margin:2px 0 0;accent-color:var(--green-700);}
.checkout-company-address-toggle span{display:grid;gap:2px;}
.checkout-company-address-toggle strong{color:var(--ink);font-size:11px;}
.checkout-company-address-toggle small{color:var(--muted);font-size:10px;line-height:1.45;}
.checkout-company-address-fields{grid-column:1 / -1;padding-top:16px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;border-top:1px solid rgba(138,66,100,.12);}
.checkout-company-address-fields[hidden]{display:none;}
.checkout-consents{display:grid;gap:11px;}
.checkout-consent{padding:15px 16px;display:grid;grid-template-columns:18px minmax(0, 1fr);gap:2px 12px;border:1px solid var(--line);border-radius:16px;background:#fff;cursor:pointer;transition:border-color .18s ease, background .18s ease;}
.checkout-consent:hover{border-color:rgba(138, 66, 100, .34);background:#fdfafb;}
.checkout-consent > span{color:var(--text);font-size:11px;line-height:1.55;}
.checkout-consent a{color:var(--green-700);font-weight:800;text-decoration:underline;text-underline-offset:2px;}
.checkout-consent > small{min-height:0;grid-column:2;color:var(--danger);font-size:10px;}
.checkout-consent.has-error{border-color:rgba(165, 61, 50, .55);background:rgba(165, 61, 50, .025);}
.checkout-consent--payment{margin-top:18px;background:var(--green-50);}
.checkout-consent--info{grid-template-columns:minmax(0,1fr);cursor:default;background:#fbf9fa;}
.checkout-consent--info:hover{border-color:var(--line);background:#fbf9fa;}
.checkout-consent--info > span{grid-column:1 / -1;min-width:0;width:100%;}

.checkout-panel__actions{margin-top:28px;padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);}
.checkout-panel__actions--end{justify-content:flex-end;}
.checkout-panel__actions .button:disabled,
.checkout-pay-button:disabled{opacity:.55;cursor:wait;transform:none;box-shadow:none;}
.checkout-alert{position:fixed;z-index:1400;top:16px;left:50%;right:auto;width:min(720px, calc(100vw - 32px));margin:0;padding:15px 18px;display:grid;grid-template-columns:minmax(0, 1fr);border:1px solid var(--line);border-radius:18px;box-shadow:0 22px 55px rgba(49, 27, 39, .20);opacity:0;transform:translate3d(-50%, -18px, 0);transition:opacity .24s ease, transform .32s cubic-bezier(.22, 1, .36, 1);pointer-events:none;}
.checkout-alert[hidden]{display:none;}
.checkout-alert.is-visible{opacity:1;transform:translate3d(-50%, 0, 0);}
.checkout-alert.is-hiding{opacity:0;transform:translate3d(-50%, -18px, 0);}
.checkout-alert__content{min-width:0;}
.checkout-alert strong{display:block;margin-bottom:3px;color:var(--ink);font-size:13px;}
.checkout-alert p{margin:0;font-size:12px;line-height:1.5;overflow-wrap:anywhere;}
.checkout-alert--error{border-color:rgba(165, 61, 50, .28);background:#fff8f7;color:var(--danger);}
.checkout-alert--success{border-color:rgba(63, 114, 90, .28);background:#f7fbf9;color:var(--success);}
.checkout-payment-secure{margin-bottom:20px;padding:15px 17px;display:flex;align-items:flex-start;gap:13px;border:1px solid rgba(63, 114, 90, .20);border-radius:17px;background:rgba(63, 114, 90, .055);}
.checkout-payment-secure > span{width:32px;height:32px;flex:0 0 32px;display:grid;place-items:center;border-radius:50%;background:rgba(63, 114, 90, .12);color:var(--success);font-size:18px;font-weight:900;}
.checkout-payment-secure strong{display:block;color:var(--ink);font-size:12px;}
.checkout-payment-secure p{margin:2px 0 0;color:var(--muted);font-size:10px;line-height:1.5;}
.checkout-stripe-box{position:relative;min-height:190px;padding:18px;border:1px solid var(--line);border-radius:19px;background:#fff;}
.checkout-stripe-loading{position:absolute;inset:0;z-index:2;display:grid;place-items:center;align-content:center;gap:12px;border-radius:inherit;background:rgba(255,255,255,.94);}
.checkout-stripe-loading[hidden]{display:none;}
.checkout-stripe-loading > span{width:28px;height:28px;border:3px solid var(--green-100);border-top-color:var(--green-700);border-radius:50%;animation:checkout-spin .8s linear infinite;}
.checkout-stripe-loading p{margin:0;color:var(--muted);font-size:11px;}
@keyframes checkout-spin{
to{transform:rotate(360deg);}}
.checkout-payment-error{display:none;margin-top:12px;padding:11px 13px;border-radius:12px;background:#fff5f4;color:var(--danger);font-size:11px;}
.checkout-payment-error.is-visible{display:block;}
.checkout-summary{display:grid;gap:17px;}
.checkout-summary section{padding:20px;border:1px solid var(--line);border-radius:18px;background:#fff;}
.checkout-summary__head{margin-bottom:14px;display:flex;align-items:center;justify-content:space-between;gap:15px;}
.checkout-summary__head h3{margin:0;color:var(--ink);font-size:16px;}
.checkout-summary__head button{padding:0;border:0;border-bottom:1px solid var(--green-600);background:transparent;color:var(--green-700);cursor:pointer;font-size:10px;font-weight:850;}
.checkout-summary dl{margin:0;display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:12px 22px;}
.checkout-summary dl div{min-width:0;}
.checkout-summary dt{color:var(--muted);font-size:9px;font-weight:850;letter-spacing:.07em;text-transform:uppercase;}
.checkout-summary dd{margin:3px 0 0;color:var(--ink);font-size:12px;font-weight:750;line-height:1.45;overflow-wrap:anywhere;}
.checkout-summary section > p{margin:0;color:var(--muted);font-size:11px;line-height:1.6;}
.checkout-final-notice{margin-top:17px;padding:16px 18px;border:1px solid rgba(109, 43, 76, .18);border-radius:17px;background:var(--green-50);}
.checkout-final-notice strong{color:var(--ink);font-size:12px;}
.checkout-final-notice p{margin:3px 0 0;color:var(--muted);font-size:10px;line-height:1.55;}
.checkout-pay-button{min-width:230px;position:relative;}
.checkout-button-spinner{width:17px;height:17px;display:none;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:checkout-spin .7s linear infinite;}
.checkout-pay-button.is-loading .checkout-button-spinner{display:inline-block;}
.checkout-final-legal{margin:11px 0 0;color:var(--muted);font-size:9px;text-align:right;}
.checkout-order-card{position:sticky;top:calc(var(--header-height) + 20px);padding:25px;border:1px solid var(--line);border-radius:24px;background:rgba(255, 255, 255, .96);box-shadow:var(--shadow-sm);}
.checkout-order-card__label{color:var(--green-700);font-size:9px;font-weight:900;letter-spacing:.11em;text-transform:uppercase;}
.checkout-order-card h2{margin:10px 0 22px;font-size:28px;line-height:1.12;}
.checkout-order-card__period,
.checkout-order-card__price,
.checkout-order-card__mode{padding:13px 0;display:flex;align-items:center;justify-content:space-between;gap:15px;border-top:1px solid var(--line);}
.checkout-order-card__period span,
.checkout-order-card__price span,
.checkout-order-card__mode span{color:var(--muted);font-size:10px;}
.checkout-order-card__period strong,
.checkout-order-card__price strong,
.checkout-order-card__mode strong{color:var(--ink);font-size:12px;text-align:right;}
.checkout-order-card__price strong{color:var(--green-700);font-family:Georgia, "Times New Roman", serif;font-size:25px;font-weight:500;}
.checkout-order-card ul{margin:9px 0 5px;padding:0;display:grid;gap:8px;list-style:none;}
.checkout-order-card li{position:relative;padding-left:20px;color:var(--muted);font-size:10px;}
.checkout-order-card li::before{content:"✓";position:absolute;left:0;color:var(--success);font-weight:900;}
.checkout-order-card__mode{margin-top:17px;padding-bottom:0;}
.checkout-unavailable{max-width:760px;margin:40px auto;padding:clamp(28px, 5vw, 52px);}
.checkout-unavailable h1{margin:8px 0 16px;font-size:clamp(38px, 6vw, 62px);}
.purchase-result-page{min-height:calc(100svh - var(--header-height));display:grid;align-items:center;}
.purchase-result-layout{max-width:760px;}
.purchase-result-card{padding:clamp(30px, 6vw, 58px);text-align:center;}
.purchase-result-card h1{margin:10px 0 17px;font-size:clamp(38px, 6vw, 60px);}
.purchase-result-icon{width:58px;height:58px;margin:0 auto 19px;display:grid;place-items:center;border-radius:50%;background:rgba(63, 114, 90, .10);color:var(--success);font-size:27px;font-weight:900;}
.purchase-result-icon--error{background:rgba(165, 61, 50, .09);color:var(--danger);}
.purchase-result-icon--processing{background:var(--green-50);color:var(--green-700);}
.purchase-result-card .purchase-actions{justify-content:center;}
@media (max-width: 980px){
.checkout-grid{grid-template-columns:1fr;}
.checkout-order-card{position:static;display:grid;grid-template-columns:minmax(0, 1fr) minmax(230px, .45fr);gap:0 25px;}
.checkout-order-card__label,
    .checkout-order-card h2,
    .checkout-order-card ul{grid-column:1;}
.checkout-order-card__period,
    .checkout-order-card__price,
    .checkout-order-card__mode{grid-column:2;}
.checkout-order-card__period{grid-row:1;border-top:0;}
.checkout-order-card__price{grid-row:2;}
.checkout-order-card__mode{grid-row:3;margin-top:0;}}
@media (max-width: 720px){
.checkout-page{padding-top:30px;}
.checkout-heading{align-items:flex-start;flex-direction:column;gap:12px;}
.checkout-heading h1{font-size:clamp(40px, 13vw, 58px);}
.checkout-steps{grid-template-columns:1fr;border-radius:18px;}
.checkout-steps li{min-height:66px;padding:13px 17px;}
.checkout-steps li:not(:last-child)::after{top:auto;left:17px;right:17px;bottom:0;width:auto;height:1px;}
.checkout-steps small{display:none;}
.checkout-panel{padding:22px 18px;border-radius:20px;}
.checkout-panel__head{gap:11px;}
.checkout-panel__head h2{font-size:31px;}
.checkout-form-grid,
    .checkout-company-fields,
    .checkout-company-address-fields,
    .checkout-summary dl{grid-template-columns:1fr;}
.checkout-field--wide{grid-column:auto;}
.checkout-panel__actions,
    .checkout-panel__actions--end,
    .checkout-panel__actions--final{align-items:stretch;flex-direction:column-reverse;}
.checkout-panel__actions .button,
    .checkout-pay-button{width:100%;}
.checkout-final-legal{text-align:center;}
.checkout-order-card{display:block;padding:22px;}
.checkout-order-card__period{border-top:1px solid var(--line);}}
@media (max-width: 420px){
.checkout-shell,
    .checkout-page > .container{width:min(calc(100% - 24px), var(--container));}
.checkout-consent{padding:13px;}
.checkout-stripe-box{padding:12px;}}
/* harmonogram miesięcznych rat w podsumowaniu zamówienia. */
.checkout-order-card__schedule{margin:12px 0 4px;padding:11px 12px;border:1px solid var(--line);border-radius:14px;background:rgba(109, 43, 76, .035);color:var(--muted);font-size:10px;line-height:1.5;}
/* archiwum wersji regulaminu - przycisk oczekujący na pierwszą aktualizację. */
.legal-actions .button:disabled{cursor:not-allowed;opacity:.52;box-shadow:none;transform:none;}

/* Czteroetapowa ścieżka zakupu i opcjonalny polski numer telefonu. */
.checkout-steps--four{grid-template-columns:repeat(4,minmax(0,1fr));}
.purchase-result-page--checkout{min-height:calc(100svh - var(--header-height));padding:clamp(42px,5vw,74px) 0 90px;display:block;align-items:initial;}
.purchase-result-page--checkout .purchase-result-steps{margin-bottom:30px;}
.purchase-result-page--checkout .purchase-result-layout{width:min(760px,100%);max-width:760px;margin:0 auto;}
.checkout-phone-input{width:100%;min-height:52px;border-radius:14px;}
.checkout-phone-input .dashboard-phone-input__prefix{min-width:58px;}
.checkout-phone-input .dashboard-phone-input__editor{min-height:50px;padding:14px;}
.checkout-consents--payment{margin-top:18px;}
.checkout-consents--payment .checkout-consent--payment{margin-top:0;}
@media(max-width:1100px) and (min-width:701px){.checkout-steps--four{grid-template-columns:repeat(2,minmax(0,1fr));}.checkout-steps--four li:nth-child(2)::after{display:none;}}

@media(max-width:700px){.checkout-steps--four{grid-template-columns:1fr;}.checkout-steps--four li::after{display:none;}}

/* Zbiorcze zaznaczanie w pionowym układzie zgód. */
.checkout-section-title--consents{display:block;}
.checkout-section-title--consents>div{min-width:0;}
.checkout-check-all{width:100%;padding:2px 16px;display:grid;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:12px;color:var(--ink);font-size:12px;font-weight:800;line-height:1.45;cursor:pointer;user-select:none;}
.checkout-check-all input{appearance:none;width:18px;height:18px;margin:0;border:2px solid rgba(45,41,45,.58);border-radius:0;background:#fff;display:grid;place-items:center;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease;}
.checkout-check-all input::after{content:"";width:9px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg) scale(0);transition:transform .14s ease;}
.checkout-check-all input:checked,.checkout-check-all input:indeterminate{border-color:var(--green-700);background:var(--green-700);}
.checkout-check-all input:checked::after{transform:rotate(-45deg) scale(1);}
.checkout-check-all input:indeterminate::after{width:9px;height:0;border-left:0;border-bottom:2px solid #fff;transform:rotate(0) scale(1);}
.checkout-check-all input:focus-visible{outline:0;box-shadow:0 0 0 3px rgba(124,48,87,.16);}
.checkout-check-all:hover input{border-color:var(--green-700);}
.checkout-payment-consents-head{margin-top:20px;}
.checkout-payment-consents-head strong{color:var(--ink);font-size:12px;}
.checkout-payment-consents-head+.checkout-consents--payment{margin-top:10px;}

@media (max-width:640px){.checkout-alert{left:50%;right:auto;width:calc(100vw - 24px);padding:14px 15px;border-radius:15px;}}

.checkout-grid--single{grid-template-columns:minmax(0,1fr);}
.checkout-settlement-info strong{font-weight:700;color:var(--ink,#2d2529)}
.checkout-settlement-list{display:grid;gap:6px;margin:10px 0 8px;padding:0;list-style:none}
.checkout-settlement-list li{display:flex;align-items:baseline;justify-content:space-between;gap:18px;padding:7px 0;border-bottom:1px solid rgba(55,42,48,.09)}
.checkout-settlement-list li:last-child{border-bottom:0}
.checkout-settlement-list li span{min-width:0}
.checkout-settlement-list li strong{white-space:nowrap}
@media(max-width:560px){.checkout-settlement-list li{align-items:flex-start}.checkout-settlement-list li strong{flex:0 0 auto}}

/* ===== 70-workspace-wide.css ===== */
/* Szerokie widoki robocze: posty i panel podopiecznego.
   Publiczne landing pages nadal korzystają z klasycznego kontenera 1200 px. */
@media (min-width: 1180px){
    /* Posty: lewa szyna blisko krawędzi, więcej miejsca na feed. */
    .posts-directory__layout.container{
        width:min(calc(100vw - 36px), 1680px);
        max-width:1680px;
        grid-template-columns:270px minmax(0, 1fr) 282px;
        gap:28px;
    }
    .posts-sidebar-nav{padding-right:20px;padding-left:20px;}
    .posts-topic-card,
    .posts-offer-card{padding-right:20px;padding-left:20px;}
    .posts-feed{grid-column:2;width:100%;max-width:none;min-width:0;justify-self:stretch;}
    .post-feed-card__header{padding-right:28px;padding-left:28px;}
    .post-feed-card__copy{padding-right:28px;padding-left:28px;}
    .post-feed-card__copy h3,
    .post-feed-card__copy p{max-width:900px;}

    /* Panel klienta: trochę szerszy sidebar i nadal szerokie centrum. */
    body.patient-panel-viewport .dashboard.section{
        padding-right:0;
        padding-left:0;
    }
    body.patient-panel-viewport .dashboard-layout.container,
    body.patient-panel-viewport .dashboard-layout{
        width:min(calc(100vw - 32px), 1680px) !important;
        max-width:1680px !important;
        margin-right:auto !important;
        margin-left:auto !important;
        grid-template-columns:300px minmax(0, 1fr) !important;
        gap:22px !important;
    }
    body.patient-panel-viewport .dashboard-sidebar{
        width:300px !important;
        min-width:300px !important;
        max-width:300px !important;
        padding-right:0 !important;
    }
    body.patient-panel-viewport .dashboard-sidebar__panel{
        width:100%;
        border-radius:20px;
    }
    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-card--hero{
        padding:20px 20px 16px !important;
    }
    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-card--hero .eyebrow{
        font-size:10px !important;
    }
    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-card--hero h1{
        font-size:clamp(22px, 1.55vw, 27px) !important;
        line-height:1.08 !important;
    }
    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav{
        padding:12px 12px !important;
        gap:7px !important;
    }
    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav a,
    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav button,
    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav .dashboard-panel-nav__locked{
        padding:10px 14px !important;
        font-size:13px !important;
    }
    body.patient-panel-viewport .dashboard-layout > .dashboard-content,
    body.patient-panel-viewport .dashboard-layout > .dashboard-main{
        min-width:0;
        width:100%;
        padding-right:4px;
    }

    /* Pomoc ma dodatkowe kolumny, więc wykorzystuje nową przestrzeń zamiast poszerzać sidebar. */
    body.patient-support-viewport .dashboard-layout--support.container,
    body.patient-support-viewport .dashboard-layout--support{
        grid-template-columns:300px minmax(0, 1fr) !important;
        gap:22px !important;
    }
    body.patient-support-viewport .dashboard-layout--support .dashboard-sidebar{
        width:300px !important;
        min-width:300px !important;
        max-width:300px !important;
        flex-basis:300px !important;
    }
    body.patient-support-viewport .support-center-layout--three{
        grid-template-columns:minmax(245px, 290px) minmax(430px, 1fr) minmax(205px, 235px) !important;
        gap:14px !important;
    }
}

@media (min-width: 1440px){
    .posts-directory__layout.container,
    body.patient-panel-viewport .dashboard-layout.container,
    body.patient-panel-viewport .dashboard-layout{
        width:min(calc(100vw - 48px), 1760px) !important;
        max-width:1760px !important;
    }
}

/* ===== 80-mobile-client.css ===== */
/* Mobile v79: public site + client-facing account/patient panel only.
   Loaded last so it can safely normalize earlier desktop-first rules. */

@media (max-width: 940px){
    html{scroll-padding-top:calc(var(--header-height) + 12px);}
    body{overflow-x:clip;}
    img,video,iframe,svg,canvas{max-width:100%;}
    pre,code,.dashboard-client-id{max-width:100%;overflow-wrap:anywhere;word-break:break-word;}

    /* Mobile navigation: usable as a real menu, not a floating desktop dropdown. */
    .site-header{padding-top:env(safe-area-inset-top);}
    .nav-wrap{gap:12px;}
    .primary-nav{top:calc(var(--header-height) + env(safe-area-inset-top) + 8px);right:12px;left:12px;max-height:calc(100dvh - var(--header-height) - env(safe-area-inset-top) - 20px);padding:14px 16px 16px;overflow-y:auto;overscroll-behavior:contain;border-radius:20px;box-shadow:0 24px 70px rgba(42,20,33,.20);}
    .primary-nav a{min-height:46px;display:flex;align-items:center;padding:11px 8px;}
    .primary-nav__account-mobile{grid-template-columns:repeat(2,minmax(0,1fr));}
    .primary-nav__account-mobile a{min-height:46px;border-bottom:1px solid var(--green-600);}
    .menu-toggle,.panel-notifications__button{min-width:44px;min-height:44px;}
    .panel-notifications__menu{max-height:calc(100dvh - var(--header-height) - 24px);overflow:hidden;}
    .panel-notifications__list{max-height:calc(100dvh - var(--header-height) - 150px);}

    /* Public sections are content-height on tablets/phones. */
    .hero.section,.transformations.section,.offer.section,.about.section,.contact.section{height:auto;min-height:0;overflow:visible;}
    .section-heading{margin-bottom:34px;}
    .section-heading--center{max-width:100%;}
    .pricing-grid{width:100%;max-width:680px;}
    .price-card{min-width:0;}
    .price-card li,.price-card p,.reassurance p,.stationary-card__note{overflow-wrap:anywhere;}
    .reassurance{max-width:680px;}

    /* Client panel becomes a mobile app-like layout with a sticky horizontal section switcher. */
    body.patient-panel-viewport .dashboard.section,
    body.patient-chat-viewport .dashboard.section{min-height:0;padding:16px 0 52px;align-items:stretch;}
    body.patient-panel-viewport .dashboard-layout,
    body.patient-chat-viewport .dashboard-layout{width:min(calc(100% - 28px),var(--container)) !important;max-width:var(--container) !important;grid-template-columns:1fr !important;gap:14px !important;overflow:visible !important;}
    body.patient-panel-viewport .dashboard-sidebar,
    body.patient-chat-viewport .dashboard-sidebar{position:sticky;z-index:85;top:var(--header-height);width:auto !important;min-width:0 !important;max-width:none !important;height:auto !important;max-height:none !important;margin:0 -14px;padding:0 !important;overflow:visible !important;}
    body.patient-panel-viewport .dashboard-sidebar__panel,
    body.patient-chat-viewport .dashboard-sidebar__panel{width:100%;overflow:visible;border:0;border-radius:0;background:transparent;box-shadow:none;}
    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-card--hero,
    body.patient-chat-viewport .dashboard-sidebar .dashboard-panel-card--hero{display:none;}
    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav,
    body.patient-chat-viewport .dashboard-sidebar .dashboard-panel-nav{height:auto !important;min-height:0 !important;padding:8px 14px !important;display:flex !important;grid-template-columns:none !important;grid-template-rows:none !important;gap:7px !important;overflow-x:auto !important;overflow-y:hidden !important;scrollbar-width:none;overscroll-behavior-x:contain;scroll-snap-type:x proximity;border:1px solid rgba(230,223,227,.92);border-right:0;border-left:0;border-radius:0;background:rgba(255,255,255,.96);box-shadow:0 10px 26px rgba(81,36,59,.08);backdrop-filter:blur(16px);}
    body.patient-panel-viewport .dashboard-panel-nav::-webkit-scrollbar,
    body.patient-chat-viewport .dashboard-panel-nav::-webkit-scrollbar{display:none;}
    body.patient-panel-viewport .dashboard-panel-nav a,
    body.patient-panel-viewport .dashboard-panel-nav button,
    body.patient-panel-viewport .dashboard-panel-nav .dashboard-panel-nav__locked,
    body.patient-chat-viewport .dashboard-panel-nav a,
    body.patient-chat-viewport .dashboard-panel-nav button,
    body.patient-chat-viewport .dashboard-panel-nav .dashboard-panel-nav__locked{width:auto !important;min-width:max-content !important;height:auto !important;min-height:42px !important;flex:0 0 auto !important;padding:9px 13px !important;display:inline-flex !important;align-items:center !important;gap:7px;border:1px solid var(--line) !important;border-radius:999px !important;background:#fff !important;color:var(--ink) !important;font-size:12px !important;line-height:1.15 !important;scroll-snap-align:start;box-shadow:none !important;transform:none !important;}
    body.patient-panel-viewport .dashboard-panel-nav a.is-active,
    body.patient-chat-viewport .dashboard-panel-nav a.is-active{border-color:rgba(109,43,76,.24) !important;background:var(--green-700) !important;color:#fff !important;box-shadow:0 8px 18px rgba(109,43,76,.18) !important;}
    body.patient-panel-viewport .dashboard-panel-nav a.is-active .dashboard-panel-nav__badge,
    body.patient-chat-viewport .dashboard-panel-nav a.is-active .dashboard-panel-nav__badge{background:#fff;color:var(--green-800);}
    body.patient-panel-viewport .dashboard-panel-nav .dashboard-panel-nav__locked,
    body.patient-chat-viewport .dashboard-panel-nav .dashboard-panel-nav__locked{background:#f4f1f3 !important;color:#999096 !important;}
    body.patient-panel-viewport .dashboard-panel-nav__item-label,
    body.patient-chat-viewport .dashboard-panel-nav__item-label{overflow:visible;text-overflow:clip;white-space:nowrap;}
    body.patient-panel-viewport .dashboard-content,
    body.patient-chat-viewport .dashboard-content{width:100%;min-width:0;height:auto !important;max-height:none !important;padding:0 !important;overflow:visible !important;}

    .dashboard-account-layout,.dashboard-field-grid,.dashboard-module-grid,.dashboard-files-grid,.dashboard-client-file-grid{grid-template-columns:1fr;}
    .dashboard-page-header,.dashboard-panel-card,.dashboard-panel-card--wide{min-width:0;}
    .dashboard-panel-card--downloads{min-height:0;}
    .dashboard-file-list{max-height:none;overflow:visible;padding-right:0;}
    .dashboard-files-card{height:auto;}
    .dashboard-files-card--education{min-height:0;}
    .dashboard-file-list--education{grid-template-columns:1fr;}
    .dashboard-summary-grid,.dashboard-summary-grid--compact{grid-template-columns:repeat(2,minmax(0,1fr));}
    .payment-nav-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
    .payment-card-list{grid-template-columns:1fr;}

    /* Chat/support use viewport efficiently but never force desktop overflow. */
    body.patient-chat-viewport{overflow-x:clip;overflow-y:auto;}
    body.patient-chat-viewport #main-content{height:auto;min-height:0;overflow:visible;}
    body.patient-chat-viewport .dashboard-content--chat{height:auto;min-height:0;overflow:visible;}
    body.patient-chat-viewport .dashboard-content--chat .patient-chat-page,
    .support-conversation{height:min(720px,calc(100dvh - var(--header-height) - 96px));min-height:500px;max-height:none;}
    .support-center-layout,.support-center-layout--three{height:auto !important;grid-template-columns:1fr !important;}
    .support-thread-list{max-height:280px;}

    /* Long/structured content. */
    .legal-table-wrap{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;}
    .legal-table{min-width:700px;}
    .article-layout,.posts-directory__layout{min-width:0;}
    .article-content,.article-main-column,.posts-feed{grid-column:2;min-width:0;}
    .article-content img,.post-feed-card img{height:auto;}
}

@media (max-width: 700px){
    :root{--mobile-gutter:16px;--header-height:72px;}
    html{-webkit-text-size-adjust:100%;}
    body{font-size:15px;line-height:1.58;}
    .container,.section>.container,.article-media-wrap{width:calc(100% - (2 * var(--mobile-gutter)));}
    input:not([type="checkbox"]):not([type="radio"]),select,textarea{font-size:16px !important;}
    .button{min-height:48px;padding:12px 18px;font-size:13px;}
    h1,h2,h3{overflow-wrap:anywhere;}
    h2{font-size:clamp(34px,10vw,44px);}
    .eyebrow{margin-bottom:12px;font-size:10px;letter-spacing:.12em;}

    /* Header */
    .nav-wrap{min-height:72px;}
    .brand__name{font-size:22px;letter-spacing:-.55px;}
    .brand__role{margin-top:5px;font-size:8px;}
    .nav-account--logged-in{gap:5px;}
    .panel-notifications__button,.menu-toggle{width:42px;height:42px;min-width:42px;min-height:42px;}
    .panel-notifications__menu{top:calc(var(--header-height) + env(safe-area-inset-top) + 6px);right:8px;left:8px;width:auto;border-radius:18px;}
    .primary-nav{right:8px;left:8px;padding:10px 14px 14px;border-radius:18px;}

    /* Homepage and public landing pages */
    .section{padding:46px 0;}
    .hero{padding-top:34px;padding-bottom:46px;}
    .hero-grid{gap:26px;}
    .hero h1{margin-bottom:18px;font-size:clamp(37px,10.8vw,48px);line-height:1.02;}
    .hero-lead{margin-bottom:20px;font-size:15px;line-height:1.62;}
    .check-list{margin-bottom:24px;gap:10px;}
    .check-list li{font-size:13.5px;line-height:1.5;}
    .hero-actions{gap:10px;}
    .hero-photo{min-height:420px;height:420px;}
    .hero-photo img{object-position:54% center;}
    .hero-motto{right:18px;bottom:18px;left:18px;font-size:19px;line-height:1.3;}
    .home-social{padding:14px 12px;grid-template-columns:1fr;gap:10px;text-align:center;}
    .home-social__icons{justify-content:center;}
    .section-heading{margin-bottom:28px;}
    .section-heading--center{text-align:left;}
    .section-heading--center .eyebrow{justify-content:flex-start;}
    .section-heading--center>p:last-child{margin-inline:0;}
    .transform-slider{padding-inline:0;}
    .slider-controls>button{width:44px;height:44px;}
    .about-grid{gap:34px;}
    .about-visual{min-height:420px;}
    .about-visual>img{right:18px;width:calc(100% - 18px);}
    .credentials-panel{right:18px;grid-template-columns:1fr;}
    .credentials-panel__item{min-height:46px;padding:8px 10px;}
    .credentials-panel__item+.credentials-panel__item{border-left:0;border-top:1px solid rgba(109,43,76,.12);}
    .values-list{margin:22px 0;}
    .values-list>div{grid-template-columns:34px 1fr;padding:13px 0;}
    .contact-grid{gap:30px;}
    .contact-form-wrap{padding:22px 16px;border-radius:20px;}
    .contact-direct{margin-top:22px;gap:4px;}
    .contact-direct a{padding:10px 0;}
    .contact-direct strong{font-size:13px;overflow-wrap:anywhere;}

    /* Offer configurator */
    .offer-page__offer{padding-top:42px;}
    .offer-configurator{margin-bottom:26px;gap:18px;}
    .offer-choice legend{margin-bottom:8px;font-size:11px;}
    .offer-segmented{border-radius:18px;}
    .offer-segmented button{min-height:44px;padding:9px 8px;font-size:11px;white-space:normal;line-height:1.2;}
    .offer-segmented--duration{grid-template-columns:repeat(2,minmax(0,1fr));border-radius:18px;}
    .price-card,.stationary-pricing-grid .price-card{padding:24px 18px 20px;border-radius:20px;}
    .price-card h3,.stationary-pricing-grid .price-card h3{font-size:25px;}
    .price strong{font-size:34px;}
    .price-card li,.stationary-pricing-grid .price-card li{font-size:12.5px;line-height:1.5;}
    .popular-badge,.stationary-badge{max-width:100%;white-space:normal;text-align:center;}
    .reassurance{margin-top:20px;padding:16px;gap:12px;border-radius:17px;}
    .reassurance__icon{width:34px;height:34px;flex-basis:34px;}
    .reassurance strong{font-size:13px;}
    .offer-stationary-link--below{margin-top:16px;text-align:center;}
    .stationary-purchase-toast{top:calc(var(--header-height) + env(safe-area-inset-top) + 10px);width:calc(100% - 24px);padding:13px 14px;}

    /* Auth */
    .auth-page{padding:36px 0 50px;}
    .auth-layout{gap:26px;}
    .auth-intro h1{margin-bottom:15px;font-size:clamp(38px,11vw,50px);}
    .auth-intro>p:not(.eyebrow){font-size:14px;line-height:1.6;}
    .selected-plan{margin-top:22px;padding:16px;border-radius:16px;}
    .selected-plan strong{font-size:21px;}
    .auth-card{padding:24px 16px;border-radius:20px;}
    .auth-card h2{font-size:34px;}
    .auth-form{gap:14px;}
    .auth-form input:not([type="checkbox"]){height:52px;}
    .auth-consents .consent{font-size:11px;}

    /* Checkout */
    .checkout-page{padding:22px 0 52px;}
    .checkout-shell,.checkout-page>.container{width:calc(100% - 24px);}
    .checkout-heading{gap:8px;}
    .checkout-heading h1{font-size:clamp(35px,11vw,46px);}
    .checkout-steps{margin-bottom:16px;border-radius:16px;}
    .checkout-steps li{min-height:58px;padding:11px 13px;}
    .checkout-panel{padding:18px 14px;border-radius:18px;}
    .checkout-panel__head h2{font-size:28px;}
    .checkout-form-grid,.checkout-company-fields,.checkout-company-address-fields,.checkout-summary dl{grid-template-columns:1fr;}
    .checkout-field input,.checkout-field select,.checkout-field textarea{min-height:50px;}
    .checkout-consent{padding:13px 12px;gap:4px 10px;border-radius:14px;}
    .checkout-consent>span{font-size:11px;line-height:1.52;}
    .checkout-check-all{padding:2px 11px;font-size:11px;}
    .checkout-panel__actions,.checkout-panel__actions--end,.checkout-panel__actions--final{gap:9px;}
    .checkout-panel__actions .button,.checkout-pay-button{width:100%;}
    .checkout-order-card{padding:18px;border-radius:18px;}
    .checkout-order-card h2{font-size:25px;}
    .checkout-summary section{padding:15px;border-radius:15px;}
    .checkout-payment-secure{padding:13px 14px;}
    .checkout-stripe-box{padding:11px;border-radius:15px;}
    .purchase-result-card{padding:26px 16px;border-radius:20px;}
    .purchase-result-card h1{font-size:clamp(34px,10vw,46px);}
    .purchase-actions{display:grid;gap:9px;}
    .purchase-actions .button{width:100%;}

    /* Legal/privacy/cookies */
    .legal-page{padding:34px 0 52px;}
    .legal-layout{gap:14px;}
    .legal-hero,.legal-card{border-radius:20px;}
    .legal-hero{padding:24px 17px;}
    .legal-hero h1{font-size:clamp(34px,10vw,46px);line-height:1.02;}
    .legal-hero>p{margin-top:14px;font-size:14px;line-height:1.62;}
    .legal-card{padding:22px 17px;}
    .legal-card h2{font-size:27px;}
    .legal-card p,.legal-list{font-size:13.5px;line-height:1.68;}
    .legal-actions{display:grid;gap:9px;}
    .legal-actions .button{width:100%;}
    .legal-table{font-size:12px;}
    .withdrawal-form-fields{grid-template-columns:1fr !important;}
    .cookie-consent{left:8px;right:8px;bottom:calc(8px + env(safe-area-inset-bottom));max-height:calc(100dvh - 16px);padding:12px;overflow-y:auto;border-radius:18px;}
    .cookie-consent__actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
    .cookie-consent__actions>a{grid-column:1 / -1;text-align:center;}
    .cookie-consent__actions .button{width:100%;min-height:44px;}
    .cookie-consent__settings{grid-template-columns:1fr;}

    /* Client panel */
    body.patient-panel-viewport .dashboard-layout,
    body.patient-chat-viewport .dashboard-layout{width:calc(100% - 24px) !important;}
    body.patient-panel-viewport .dashboard-sidebar,
    body.patient-chat-viewport .dashboard-sidebar{margin:0 -12px;}
    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav,
    body.patient-chat-viewport .dashboard-sidebar .dashboard-panel-nav{padding:7px 12px !important;}
    .dashboard-panel-card,.dashboard-panel-card--wide,.dashboard-page-header{padding:20px 16px;border-radius:18px;}
    .dashboard-page-header h2{margin-top:8px;font-size:31px;}
    .dashboard-page-header p{font-size:13px;line-height:1.55;}
    .dashboard-panel-card--wide h2{font-size:31px;}
    .dashboard-module-card h3{font-size:25px;}
    .dashboard-summary-grid,.dashboard-summary-grid--compact{grid-template-columns:1fr;gap:10px;}
    .dashboard-summary-card{padding:15px;border-radius:16px;}
    .dashboard-account-layout,.dashboard-field-grid{grid-template-columns:1fr;gap:13px;}
    .dashboard-field input{min-height:52px;}
    .dashboard-security-actions,.dashboard-security-actions--phone{display:grid;grid-template-columns:1fr;width:100%;}
    .dashboard-security-actions .button,.dashboard-security-actions--phone .button{width:100%;}
    .dashboard-phone-input__prefix{min-width:58px;padding:0 13px;}
    .dashboard-phone-input__editor{font-size:16px;}
    .dashboard-files-toolbar{padding:16px;}
    .dashboard-client-file-grid,.education-materials-grid{padding:14px;gap:12px;}
    .dashboard-client-file-card,.education-material-tile{min-height:0;padding:17px;border-radius:17px;}
    .dashboard-client-file-card h3,.education-material-tile strong{font-size:20px;}
    .dashboard-download-list li{gap:10px;}
    .dashboard-download-list .button{width:100%;}
    .intake-form{gap:20px;}
    .intake-section{gap:13px;padding-bottom:19px;}
    .intake-section--training{padding:17px;border-radius:18px;}
    .intake-grid{grid-template-columns:1fr;gap:12px;}
    .intake-form input,.intake-form select,.intake-form textarea{border-radius:14px;}

    /* Payments */
    .payment-nav-grid{grid-template-columns:1fr;gap:10px;}
    .payment-nav-card{min-height:0;padding:17px;border-radius:17px;}
    .payment-nav-card strong{margin-top:8px;font-size:19px;}
    .payment-nav-card small{margin-top:7px;}
    .payment-subnav{padding:6px;display:flex;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;border-radius:15px;}
    .payment-subnav::-webkit-scrollbar{display:none;}
    .payment-subnav a{min-width:max-content;min-height:42px;display:flex;align-items:center;padding:9px 12px;}
    .payment-section-heading h2{font-size:30px;}
    .payment-saved-card{min-height:210px;padding:19px;border-radius:20px;}
    .payment-saved-card__number{margin:30px 0 20px;font-size:20px;letter-spacing:.05em;}
    .payment-saved-card__actions,.payment-saved-card__actions form{width:100%;}
    .payment-saved-card__actions .button{width:100%;}
    .payment-dialog{width:calc(100% - 16px);max-height:calc(100dvh - 16px);border-radius:20px;}
    .payment-dialog__content{padding:20px 15px 22px;}
    .payment-dialog__title-row h2{font-size:28px;}
    .payment-history-list article,.payment-document-list article{gap:10px;}

    /* Chat + support */
    body.patient-chat-viewport .dashboard-content--chat .patient-chat-page,
    .support-conversation{height:calc(100dvh - var(--header-height) - 90px);min-height:460px;max-height:680px;border-radius:18px;}
    .patient-chat-page__header{padding:14px 15px;gap:10px;}
    .patient-chat-page__header--title-only h2{margin-top:4px;font-size:28px;}
    .patient-chat-page__messages{padding:15px 12px;gap:10px;}
    .patient-chat-message{max-width:92%;padding:12px 13px;border-radius:17px;}
    .patient-chat-message p{font-size:14px;line-height:1.52;}
    .patient-chat-page__composer{padding:12px;}
    .patient-chat-page__composer textarea{min-height:76px;padding:12px;border-radius:14px;}
    .patient-chat-page__actions{gap:8px;}
    .patient-chat-page__composer--images{grid-template-columns:40px minmax(0,1fr);gap:8px;}
    .patient-chat-page__composer--images .patient-chat-selected-images{height:54px;}
    .support-thread-list{max-height:220px;}
    .support-thread-sidebar__head{padding:16px 15px 11px;}
    .support-new-thread{padding:13px;}
    .support-conversation__header{padding:13px 14px;}
    .support-topic-menu{max-height:42dvh;}

    /* Privacy/consents */
    .privacy-auto-option,.privacy-delete-option{padding:13px;border-radius:14px;}
    .privacy-cookie-row{gap:10px;}
    .privacy-request-overview-card--collapsible>summary,.consent-category>summary{padding:15px 13px;gap:9px;}
    .privacy-request-overview-card--collapsible>summary{grid-template-columns:minmax(0,1fr) auto auto;}
    .consent-category>summary{grid-template-columns:minmax(0,1fr) auto auto;}
    .privacy-request-overview-card__body,.consent-category__body{padding:0 12px 12px;}
    .consent-history-item{padding:13px;}

    /* Posts/articles */
    .posts-directory{padding-top:16px;}
    .posts-directory__layout{gap:24px;}
    .posts-sidebar-nav{padding:14px;}
    .posts-sidebar-nav__buttons{gap:7px;}
    .posts-topic-card,.posts-offer-card,.posts-social-card{padding:16px;}
    .post-feed-card__copy{padding:16px 14px 17px;}
    .post-feed-card__copy h3{font-size:clamp(25px,8vw,31px);}
    .article-header{padding:38px 0 36px;}
    .article-header h1{font-size:clamp(36px,10vw,46px);}
    .article-layout{padding-top:36px;padding-bottom:52px;gap:34px;}
    .article-content>p,.article-content>ul,.article-content>ol,.article-content>blockquote{font-size:16px;line-height:1.72;}
    .article-content h2{font-size:29px;}
    .article-content blockquote{padding:16px;font-size:18px;}
    .article-aside{padding:20px 16px;border-radius:18px;}

    /* Footer + floating action */
    .site-footer--compact{padding-bottom:env(safe-area-inset-bottom);}
    .footer-main{padding-top:20px;padding-bottom:20px;gap:18px;}
    .footer-brand-block{margin-bottom:2px;}
    .brand--footer .brand__name{font-size:21px;}
    .footer-nav{width:100%;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;}
    .footer-nav a,.footer-contact-block a{font-size:11px;line-height:1.35;}
    .footer-contact-block{display:grid;gap:8px;}
    .footer-contact-block__items{display:grid;gap:5px;}
    .footer-contact-block__items a{white-space:normal;overflow-wrap:anywhere;}
    .footer-meta-block{display:grid;gap:5px;font-size:9px;}
    .footer-meta-block span{font-size:9px;line-height:1.45;}
    .footer-social-block{grid-template-columns:auto 1fr;}
    .footer-cookie-block .footer-cookie-settings{min-height:40px;display:inline-flex;align-items:center;font-size:11px;}
    .floating-contact{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));width:48px;height:48px;min-height:48px;padding:0;justify-content:center;}
    .floating-contact svg{width:24px;height:24px;}

    /* Generic toast/dialog safety. */
    .dashboard-toast,.checkout-alert{max-width:calc(100vw - 20px);overflow-wrap:anywhere;}
    .chat-image-lightbox{padding:8px;}
    .chat-image-lightbox__image{max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);}
}

@media (max-width: 420px){
    :root{--mobile-gutter:12px;}
    .brand__name{font-size:21px;}
    .hero h1{font-size:clamp(35px,10.5vw,43px);}
    .hero-photo{min-height:380px;height:380px;}
    .hero-motto{font-size:17px;}
    .price-card,.stationary-pricing-grid .price-card{padding:21px 15px 18px;}
    .offer-segmented button{font-size:10.5px;}
    .checkout-shell,.checkout-page>.container{width:calc(100% - 16px);}
    .checkout-panel{padding:16px 11px;}
    .dashboard-panel-card,.dashboard-panel-card--wide,.dashboard-page-header{padding:18px 13px;}
    .payment-dialog__content{padding:18px 12px 20px;}
    .cookie-consent__actions{grid-template-columns:1fr;}
    .footer-nav{grid-template-columns:1fr 1fr;column-gap:12px;}
}

/* ==========================================================
   Mobile v79 — public-site polish for real phones (iOS/Android)
   ========================================================== */
@media (max-width: 940px){
    /* Mobile browsers already reserve their own top chrome. Adding the iOS
       safe-area here created a large empty strip on some iPhones. */
    .site-header{padding-top:0;}
    .primary-nav{top:calc(var(--header-height) + 8px);}
}

@media (max-width: 700px){
    :root{--mobile-gutter:16px;--header-height:68px;}
    html{scroll-padding-top:calc(var(--header-height) + 10px);}
    body{font-size:15px;line-height:1.56;}
    .container,.section>.container,.article-media-wrap{width:calc(100% - (2 * var(--mobile-gutter)));}
    .section{padding:44px 0;}

    /* Compact, balanced header. */
    .site-header{border-bottom-color:rgba(230,223,227,.82);background:rgba(255,255,255,.97);box-shadow:0 7px 24px rgba(81,36,59,.055);backdrop-filter:blur(18px);}
    .nav-wrap{min-height:68px;gap:10px;}
    .brand__name{font-size:24px;letter-spacing:-.7px;}
    .brand__role{margin-top:5px;font-size:8px;letter-spacing:.23em;}
    .menu-toggle{width:44px;height:44px;min-width:44px;min-height:44px;margin-left:auto;padding:10px;background:var(--green-50);}
    .nav-account--logged-in + .menu-toggle{margin-left:0;}
    .primary-nav{top:calc(var(--header-height) + 7px);right:10px;left:10px;max-height:calc(100dvh - var(--header-height) - 18px);padding:9px 14px 14px;border-radius:18px;}
    .primary-nav a{min-height:44px;padding:10px 7px;font-size:14px;}
    .primary-nav__account-mobile{gap:8px;margin-top:10px;padding-top:12px;}
    .panel-notifications__menu{top:calc(var(--header-height) + 7px);right:10px;left:10px;}

    /* Type hierarchy that fits a 360–430 px viewport without looking tiny. */
    h2{font-size:clamp(34px,9.7vw,42px);line-height:1.02;letter-spacing:-.04em;}
    .eyebrow{margin-bottom:13px;font-size:10px;letter-spacing:.13em;}
    .eyebrow>span{width:24px;}
    .button{min-height:50px;padding:13px 18px;font-size:13px;}

    /* Homepage hero — less dead space, stronger first screen and a cleaner image card. */
    .hero.section{padding:28px 0 42px;}
    .hero-grid{gap:24px;}
    .hero-copy{max-width:none;}
    .hero h1{max-width:none;margin-bottom:17px;font-size:clamp(38px,10.4vw,45px);line-height:.995;letter-spacing:-.037em;overflow-wrap:normal;}
    .hero-lead{max-width:none;margin-bottom:20px;font-size:15px;line-height:1.58;}
    .check-list{margin-bottom:23px;gap:10px;}
    .check-list li{gap:10px;font-size:13.5px;line-height:1.45;}
    .check-list li span{width:20px;height:20px;flex-basis:20px;margin-top:1px;font-size:12px;}
    .hero-actions{display:grid;grid-template-columns:1fr;gap:9px;}
    .hero-actions .button{width:100%;}
    .hero-visual{gap:0;margin-top:0;}
    .hero-visual__media{overflow:hidden;border-radius:22px 22px 0 0;}
    .hero-photo{width:100%;height:auto;min-height:0;aspect-ratio:4 / 4.55;border-radius:22px 22px 0 0;box-shadow:0 18px 44px rgba(81,36,59,.13);}
    .hero-photo img{object-position:54% center;transform:scale(1.045);}
    .hero-motto{right:18px;bottom:18px;left:18px;font-size:18px;line-height:1.27;}
    .hero-motto cite{margin-top:7px;font-size:8px;}
    .home-social{margin:0;padding:12px 12px 13px;grid-template-columns:1fr;gap:8px;border-radius:0 0 22px 22px;text-align:center;}
    .home-social::before{right:14px;left:14px;}
    .home-social__icons{justify-content:center;gap:7px;}
    .home-social__icons .social-icon-link{width:36px;height:36px;}

    /* Common public section spacing. */
    .section-heading{margin-bottom:27px;}
    .section-heading--center{max-width:none;margin-right:0;margin-left:0;text-align:left;}
    .section-heading--center .eyebrow{justify-content:flex-start;}
    .section-heading--center>p:last-child{margin-inline:0;}
    .section-heading--split{gap:14px;}

    /* Offer page/configurator — one clean control block and full-width cards. */
    .offer.section{padding:42px 0 46px;}
    .offer-page__offer{padding-top:30px;}
    .offer .section-heading{margin-bottom:24px;}
    .offer .section-heading h2{max-width:360px;margin-bottom:0;overflow-wrap:normal;}
    .offer-configurator{max-width:none;margin:0 0 24px;gap:15px;}
    .offer-choice{text-align:left;}
    .offer-choice legend{margin-bottom:7px;font-size:11px;line-height:1.3;}
    .offer-segmented{padding:4px;border-radius:16px;background:#fff;box-shadow:0 5px 18px rgba(81,36,59,.035);}
    .offer-segmented button{min-height:43px;padding:8px 7px;border-radius:13px;font-size:11px;line-height:1.15;white-space:nowrap;}
    .offer-segmented--duration{grid-template-columns:repeat(4,minmax(0,1fr));}
    .pricing-grid{max-width:none;margin:0;gap:16px;}
    .price-card,.stationary-pricing-grid .price-card{padding:23px 18px 19px;border-radius:22px;box-shadow:0 11px 30px rgba(81,36,59,.055);}
    .price-card:hover{transform:none;}
    .price-card--featured{padding-top:38px;border-width:2px;box-shadow:0 16px 38px rgba(81,36,59,.10);}
    .popular-badge,.stationary-badge{padding:7px 13px;border-radius:0 0 11px 11px;font-size:8px;letter-spacing:.1em;}
    .price-card h3,.stationary-pricing-grid .price-card h3{margin:10px 0 13px;font-size:27px;}
    .price-card--featured h3{margin-top:8px;}
    .price{gap:7px;line-height:1.1;}
    .price strong{font-size:36px;}
    .price span{font-size:11px;}
    .price-equivalent{min-height:0;margin-bottom:14px;font-size:11px;}
    .price-intro{min-height:0;margin-bottom:18px;font-size:12.5px;line-height:1.55;}
    .price-card ul{margin-bottom:22px;padding-top:18px;gap:10px;}
    .price-card li,.stationary-pricing-grid .price-card li{padding-left:22px;font-size:12.5px;line-height:1.45;}
    .price-card .button{min-height:49px;}
    .offer-stationary-link--below{margin-top:18px;font-size:12px;line-height:1.45;text-align:center;}
    .reassurance{margin-top:17px;padding:15px;gap:11px;border-radius:17px;}
    .reassurance__icon{width:34px;height:34px;flex-basis:34px;}
    .reassurance strong{font-size:13px;line-height:1.35;}
    .reassurance p{font-size:11.5px;line-height:1.5;}

    /* Transformations — preserve comparison value without two giant portrait columns. */
    .transformations.section{padding:44px 0;}
    .transform-slider{padding-inline:0;}
    .transform-set{gap:24px;}
    .transformation-compare{min-height:0;gap:7px;}
    .transformation-compare>figure,.transformation-compare img{min-height:0;height:auto;aspect-ratio:3 / 4;}
    .transformation-compare>figure{border-radius:15px !important;}
    .transformation-compare figcaption{right:8px;bottom:8px;padding:6px 8px;font-size:8px;}
    .transform-content{padding-top:14px;}
    .transformation-person h3{font-size:24px;}
    .transformation-person p{font-size:11px;}
    .transformation-result{width:62px;height:62px;flex-basis:62px;}
    .transformation-result strong{font-size:14px;}
    .transformation-description{min-height:0;margin-top:10px;font-size:12.5px;line-height:1.55;}
    .slider-controls{margin-top:15px;}
    .slider-controls>button{top:calc(50% - 52px);width:42px;height:42px;font-size:19px;}
    .slider-controls>button[data-slider-prev]{left:-8px;}
    .slider-controls>button[data-slider-next]{right:-8px;}

    /* About section — use the full phone width and keep qualifications in one row. */
    .about.section{padding:46px 0;}
    .about-grid{gap:29px;}
    .about-visual{width:100%;min-height:0;margin:0;aspect-ratio:4 / 4.9;}
    .about-visual::before{display:none;}
    .about-visual>img{inset:0;width:100%;height:100%;border-radius:24px;object-position:center 29%;}
    .credentials-panel{right:0;grid-template-columns:repeat(3,minmax(0,1fr));border-radius:0 0 24px 24px;}
    .credentials-panel__item{min-height:52px;padding:8px 6px;}
    .credentials-panel__item+.credentials-panel__item{border-top:0;border-left:1px solid rgba(109,43,76,.12);}
    .credentials-panel__item strong{font-size:8.5px;line-height:1.25;}
    .about-copy h2{margin-bottom:17px;}
    .about-copy>p:not(.eyebrow){font-size:13.5px;line-height:1.62;}
    .about-lead{font-size:15px !important;}
    .values-list{margin:20px 0;}
    .values-list>div{grid-template-columns:31px 1fr;gap:10px;padding:12px 0;}
    .values-list span{font-size:15px;}
    .values-list p{font-size:12px;line-height:1.5;}
    .values-list strong{font-size:13px;}

    /* Contact form: roomy enough to tap, but not desktop-sized. */
    .contact.section{padding:46px 0;}
    .contact-grid{gap:27px;}
    .contact-copy>p:not(.eyebrow):not(.contact-time){font-size:13.5px;line-height:1.62;}
    .contact-direct{margin-top:20px;gap:1px;}
    .contact-direct a{padding:9px 0;gap:11px;}
    .contact-icon{width:39px;height:39px;flex-basis:39px;}
    .contact-form-wrap{padding:20px 15px;border-radius:20px;}
    .contact-form-wrap form{gap:14px;}
    .contact-form-wrap input:not([type="checkbox"]),.contact-form-wrap select{height:50px;}
    .contact-form-wrap textarea{min-height:112px;}
    .form-privacy{line-height:1.45;}

    /* Floating chat should not cover important lower-right content. */
    .floating-contact{right:12px;bottom:calc(12px + env(safe-area-inset-bottom));width:48px;height:48px;min-height:48px;padding:0;border-radius:50%;justify-content:center;}
}

@media (max-width: 420px){
    :root{--mobile-gutter:16px;}
    .brand__name{font-size:23px;}
    .hero h1{font-size:clamp(37px,10.2vw,42px);}
    .hero-photo{height:auto;min-height:0;aspect-ratio:4 / 4.65;}
    .price-card,.stationary-pricing-grid .price-card{padding-right:17px;padding-left:17px;}
    .offer-segmented button{font-size:10.5px;}
}

@media (max-width: 350px){
    .offer-segmented--duration{grid-template-columns:repeat(2,minmax(0,1fr));}
}

/* Safe-area padding is useful only when the site actually runs standalone. */
@media (max-width: 940px) and (display-mode: standalone){
    .site-header{padding-top:env(safe-area-inset-top);}
    .primary-nav{top:calc(var(--header-height) + env(safe-area-inset-top) + 8px);}
}

@media (max-width: 700px){
    #main-content{overflow-x:clip;}
    .transformations.section,.contact.section{overflow:hidden;}
    .floating-contact{width:44px;height:44px;min-height:44px;right:8px;bottom:calc(10px + env(safe-area-inset-bottom));}
    .floating-contact svg{width:22px;height:22px;}
}


/* ==========================================================
   Mobile v83 — proportional desktop hero, no hand-tuned reflow
   ========================================================== */
.hero-scale-stage{width:100%;}
@media (max-width:700px){
    .hero.section{
        min-height:0!important;
        padding:22px 0 42px!important;
        overflow:hidden!important;
    }
    .hero .reveal,.hero .reveal--delay{opacity:1!important;transform:none!important;transition:none!important;}
    .hero-scale-stage{
        width:calc(100% - 24px)!important;
        margin:0 auto!important;
        position:relative!important;
        overflow:visible!important;
        height:calc(57.75vw - 13.86px);
    }
    .hero-grid{
        width:1200px!important;
        max-width:none!important;
        margin:0!important;
        display:grid!important;
        grid-template-columns:minmax(0,1.03fr) minmax(0,.97fr)!important;
        align-items:start!important;
        gap:60px!important;
        transform-origin:top left!important;
        transform:scale(var(--hero-scale,.3))!important;
    }
    .hero-copy{position:relative!important;z-index:2!important;max-width:none!important;min-width:0!important;}
    .hero .eyebrow{
        display:flex!important;
        align-items:center!important;
        gap:11px!important;
        margin:0 0 18px!important;
        font-size:12px!important;
        line-height:normal!important;
        letter-spacing:.14em!important;
    }
    .hero .eyebrow>span{width:28px!important;height:2px!important;}
    .hero h1{
        max-width:720px!important;
        margin:0 0 25px!important;
        font-size:62px!important;
        line-height:1.01!important;
        letter-spacing:-.035em!important;
        overflow-wrap:normal!important;
        word-break:normal!important;
        hyphens:none!important;
    }
    .hero-lead{
        max-width:620px!important;
        margin:0 0 26px!important;
        font-size:18px!important;
        line-height:1.7!important;
    }
    .check-list{margin:0 0 32px!important;padding:0!important;display:grid!important;gap:12px!important;}
    .check-list li{display:flex!important;align-items:flex-start!important;gap:12px!important;font-size:15px!important;line-height:1.65!important;}
    .check-list li span{width:22px!important;height:22px!important;flex:0 0 22px!important;margin-top:1px!important;font-size:13px!important;}
    .hero-actions{display:flex!important;flex-wrap:wrap!important;grid-template-columns:none!important;gap:13px!important;}
    .hero-actions .button{width:auto!important;min-height:52px!important;padding:14px 23px!important;font-size:14px!important;}

    .hero-visual{
        position:relative!important;
        display:grid!important;
        align-content:start!important;
        gap:0!important;
        margin-top:-18px!important;
        min-width:0!important;
        overflow:visible!important;
        border-radius:28px!important;
        background:transparent!important;
        box-shadow:none!important;
        filter:drop-shadow(0 18px 36px rgba(54,29,42,.11))!important;
    }
    .hero-visual__media{overflow:visible!important;border-radius:0!important;}
    .hero-photo{
        position:relative!important;
        width:100%!important;
        min-height:640px!important;
        height:640px!important;
        aspect-ratio:auto!important;
        overflow:hidden!important;
        border-radius:28px 28px 0 0!important;
        background:transparent!important;
        box-shadow:none!important;
    }
    .hero-photo img{
        position:absolute!important;
        inset:0!important;
        width:100%!important;
        height:100%!important;
        object-fit:cover!important;
        object-position:54% center!important;
        transform:scale(1.08)!important;
        transform-origin:center center!important;
        border-radius:0!important;
        box-shadow:none!important;
    }
    .hero-photo__shade{display:none!important;}
    .hero-motto{
        position:absolute!important;
        z-index:3!important;
        right:35px!important;
        bottom:29px!important;
        left:55px!important;
        max-width:380px!important;
        margin:0!important;
        color:#fff!important;
        font-size:25px!important;
        line-height:1.35!important;
        text-shadow:0 3px 18px rgba(0,0,0,.42),0 1px 6px rgba(0,0,0,.28)!important;
    }
    .hero-motto cite{
        display:block!important;
        margin-top:9px!important;
        color:rgba(255,255,255,.9)!important;
        font-size:9px!important;
        line-height:normal!important;
        letter-spacing:.12em!important;
    }
    .home-social{
        position:relative!important;
        z-index:2!important;
        width:100%!important;
        margin:0!important;
        padding:16px 18px!important;
        display:grid!important;
        grid-template-columns:minmax(0,1fr) auto!important;
        align-items:center!important;
        gap:14px!important;
        border:1px solid rgba(124,41,82,.13)!important;
        border-top:0!important;
        border-radius:0 0 28px 28px!important;
        background:rgba(255,255,255,.96)!important;
        box-shadow:none!important;
        backdrop-filter:none!important;
        text-align:left!important;
    }
    .home-social::before{content:""!important;display:block!important;position:absolute!important;top:0!important;right:18px!important;left:18px!important;height:1px!important;background:rgba(124,41,82,.10)!important;}
    .home-social__heading{display:grid!important;width:auto!important;}
    .home-social__eyebrow{display:block!important;color:var(--accent)!important;font-size:10px!important;font-weight:900!important;letter-spacing:.1em!important;text-transform:uppercase!important;}
    .home-social__icons{display:flex!important;flex-wrap:wrap!important;justify-content:flex-end!important;gap:8px!important;}
    .home-social__icons .social-icon-link{width:38px!important;height:38px!important;min-width:38px!important;background:#fff!important;}
}


/* ==========================================================
   Mobile v84 — proportional public-site pass + blur reduction
   ========================================================== */
@media (max-width:700px){
    /* Keep the same calmer, proportional rhythm across the whole public site. */
    .section{padding:44px 0!important;}
    .transformations.section{padding:42px 0!important;}
    .offer.section,.about.section,.contact.section{padding:46px 0!important;}
    .section-heading{margin-bottom:24px!important;}
    .section-heading h2{max-width:520px!important;font-size:clamp(44px,11.2vw,60px)!important;line-height:1.02!important;letter-spacing:-.04em!important;}
    .section-heading>p:last-child{max-width:540px!important;font-size:14px!important;line-height:1.58!important;}
    .eyebrow{font-size:11px!important;letter-spacing:.14em!important;}

    /* Blur reduction: avoid extra photo scaling / filter compositing on mobile. */
    .hero-visual{filter:none!important;box-shadow:0 18px 36px rgba(54,29,42,.11)!important;}
    .hero-photo img{transform:none!important;}
    .about-visual>img,
    .transformation-compare img,
    .post-feed-card__image img,
    .post-card img,
    .post-gallery__slide img,
    .article-hero img{filter:none!important;image-rendering:auto!important;}

    /* Offer block: same visual language across the whole page. */
    .offer .section-heading{margin-bottom:22px!important;}
    .offer .section-heading h2{max-width:500px!important;}
    .offer-configurator{max-width:760px!important;margin:0 0 26px!important;gap:16px!important;}
    .offer-choice legend{font-size:11px!important;line-height:1.35!important;}
    .offer-segmented{padding:4px!important;border-radius:18px!important;box-shadow:0 6px 18px rgba(81,36,59,.035)!important;}
    .offer-segmented button{min-height:46px!important;padding:8px 10px!important;border-radius:14px!important;font-size:11px!important;}
    .pricing-grid{gap:18px!important;}
    .price-card,.stationary-pricing-grid .price-card{padding:25px 20px 20px!important;border-radius:24px!important;box-shadow:0 12px 32px rgba(81,36,59,.055)!important;}
    .price-card--featured{padding-top:40px!important;box-shadow:0 18px 42px rgba(81,36,59,.10)!important;}
    .price-card h3,.stationary-pricing-grid .price-card h3{margin:8px 0 14px!important;font-size:28px!important;line-height:1.05!important;}
    .price strong{font-size:38px!important;}
    .price span{font-size:12px!important;}
    .price-equivalent{margin-bottom:14px!important;font-size:11px!important;}
    .price-intro{margin-bottom:18px!important;font-size:13px!important;line-height:1.58!important;}
    .price-card ul{margin-bottom:22px!important;padding-top:18px!important;gap:10px!important;}
    .price-card li,.stationary-pricing-grid .price-card li{padding-left:22px!important;font-size:13px!important;line-height:1.46!important;}
    .price-card .button{min-height:50px!important;font-size:13px!important;}
    .reassurance{margin-top:18px!important;padding:15px!important;border-radius:18px!important;}

    /* Transformations */
    .transform-set{gap:22px!important;}
    .transformation-compare{gap:8px!important;}
    .transformation-compare>figure,.transformation-compare img{aspect-ratio:3 / 4!important;}
    .transformation-compare>figure{border-radius:16px!important;overflow:hidden!important;}
    .transform-content{padding-top:14px!important;}
    .transformation-person h3{font-size:24px!important;line-height:1.08!important;}
    .transformation-person p{font-size:12px!important;}
    .transformation-description{font-size:13px!important;line-height:1.56!important;}

    /* About section */
    .about-grid{gap:30px!important;}
    .about-visual{width:100%!important;min-height:0!important;aspect-ratio:4 / 4.95!important;}
    .about-visual::before{display:none!important;}
    .about-visual>img{inset:0!important;width:100%!important;height:100%!important;border-radius:24px!important;object-position:center 29%!important;}
    .credentials-panel{right:0!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;border-radius:0 0 24px 24px!important;backdrop-filter:none!important;}
    .credentials-panel__item{min-height:54px!important;padding:8px 6px!important;}
    .credentials-panel__item+.credentials-panel__item{border-top:0!important;border-left:1px solid rgba(109,43,76,.12)!important;}
    .credentials-panel__item strong{font-size:8.6px!important;line-height:1.25!important;}
    .about-copy h2{margin-bottom:18px!important;font-size:clamp(42px,10.8vw,56px)!important;line-height:1.02!important;letter-spacing:-.04em!important;}
    .about-copy>p:not(.eyebrow){font-size:13.5px!important;line-height:1.6!important;}
    .about-lead{font-size:15px!important;line-height:1.56!important;}
    .values-list{margin:20px 0!important;}
    .values-list>div{grid-template-columns:31px 1fr!important;gap:10px!important;padding:12px 0!important;}
    .values-list strong{font-size:13px!important;}
    .values-list p{font-size:12px!important;line-height:1.5!important;}
    .text-link{font-size:13px!important;}

    /* Contact */
    .contact-grid{gap:28px!important;}
    .contact-copy h2{font-size:clamp(42px,10.8vw,56px)!important;line-height:1.02!important;letter-spacing:-.04em!important;}
    .contact-copy>p:not(.eyebrow):not(.contact-time){font-size:13.5px!important;line-height:1.62!important;}
    .contact-direct{margin-top:20px!important;}
    .contact-direct a{padding:10px 0!important;gap:12px!important;}
    .contact-icon{width:40px!important;height:40px!important;flex-basis:40px!important;}
    .contact-form-wrap{padding:22px 16px!important;border-radius:22px!important;box-shadow:0 28px 70px rgba(0,0,0,.18)!important;}
    .contact-form-wrap form{gap:14px!important;}
    .contact-form-wrap input:not([type="checkbox"]),.contact-form-wrap select{height:50px!important;}
    .contact-form-wrap textarea{min-height:112px!important;}

    /* Small polish for the floating chat on public pages. */
    .floating-contact{right:12px!important;bottom:calc(12px + env(safe-area-inset-bottom))!important;width:48px!important;height:48px!important;min-height:48px!important;padding:0!important;border-radius:50%!important;justify-content:center!important;}
}

@media (max-width:420px){
    .section-heading h2{font-size:clamp(40px,10.8vw,52px)!important;}
    .pricing-grid{gap:16px!important;}
    .price-card,.stationary-pricing-grid .price-card{padding:24px 18px 19px!important;}
    .price-card h3,.stationary-pricing-grid .price-card h3{font-size:27px!important;}
    .price strong{font-size:36px!important;}
    .about-copy h2,.contact-copy h2{font-size:clamp(38px,10.6vw,50px)!important;}
}

@media (max-width:360px){
    .section-heading h2{font-size:clamp(35px,10.2vw,46px)!important;}
    .offer-segmented button{font-size:10.2px!important;}
    .price-card li,.stationary-pricing-grid .price-card li{font-size:12.2px!important;}
    .about-copy h2,.contact-copy h2{font-size:clamp(34px,10vw,44px)!important;}
}


/* ==========================================================
   Mobile v85 — whole public layout proportional like desktop
   + sharper hero rendering + desktop-like offer grid
   ========================================================== */
.offer-scale-stage{width:100%;}
@media (max-width:700px){
    /* Hero: keep the desktop feel but reduce blur on iPhone/Safari. */
    .hero-scale-stage{overflow:visible!important;}
    .hero-grid[data-scale-mode="zoom"]{transform:none!important;zoom:var(--hero-scale,.3)!important;}
    .hero-scale-stage[data-scale-mode="zoom"]{height:auto!important;}
    .hero-grid{backface-visibility:hidden!important;-webkit-backface-visibility:hidden!important;transform-style:preserve-3d!important;}
    .hero-photo,.hero-photo img{backface-visibility:hidden!important;-webkit-backface-visibility:hidden!important;}
    .hero-photo img{image-rendering:auto!important;-webkit-transform:translateZ(0)!important;transform:translateZ(0)!important;}

    /* Offer: scale as one desktop composition instead of stacking cards. */
    .offer.section{overflow:hidden!important;padding:44px 0 46px!important;}
    .offer.section>.container{width:100%!important;max-width:none!important;}
    .offer-scale-stage{
        width:calc(100% - 24px)!important;
        margin:0 auto!important;
        position:relative!important;
        overflow:visible!important;
    }
    .offer-scale-stage[data-scale-mode="zoom"]{height:auto!important;}
    .offer-scale-canvas{
        width:1200px!important;
        max-width:none!important;
        margin:0!important;
        transform-origin:top left!important;
        transform:scale(var(--offer-scale,.3))!important;
        backface-visibility:hidden!important;
        -webkit-backface-visibility:hidden!important;
    }
    .offer-scale-canvas[data-scale-mode="zoom"]{transform:none!important;zoom:var(--offer-scale,.3)!important;}
    .offer-scale-canvas .section-heading{margin-bottom:28px!important;}
    .offer-scale-canvas .section-heading h2{max-width:760px!important;font-size:62px!important;line-height:1.01!important;letter-spacing:-.04em!important;}
    .offer-scale-canvas .offer-configurator{max-width:760px!important;margin:0 0 28px!important;gap:18px!important;}
    .offer-scale-canvas .offer-choice{text-align:left!important;}
    .offer-scale-canvas .offer-choice legend{margin-bottom:10px!important;font-size:12px!important;line-height:1.35!important;}
    .offer-scale-canvas .offer-segmented{padding:4px!important;border-radius:20px!important;box-shadow:0 6px 18px rgba(81,36,59,.035)!important;}
    .offer-scale-canvas .offer-segmented button{min-height:50px!important;padding:10px 12px!important;border-radius:16px!important;font-size:13px!important;line-height:1.2!important;}
    .offer-scale-canvas .offer-segmented--duration{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
    .offer-scale-canvas .pricing-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch!important;max-width:none!important;margin:0!important;gap:22px!important;}
    .offer-scale-canvas .price-card,.offer-scale-canvas .stationary-pricing-grid .price-card{padding:36px 31px 30px!important;display:flex!important;flex-direction:column!important;border-radius:24px!important;box-shadow:none!important;}
    .offer-scale-canvas .price-card--featured{padding-top:50px!important;border-width:2px!important;box-shadow:0 24px 70px rgba(81,36,59,.15)!important;}
    .offer-scale-canvas .popular-badge,.offer-scale-canvas .stationary-badge{padding:7px 14px!important;border-radius:0 0 12px 12px!important;font-size:9px!important;letter-spacing:.09em!important;}
    .offer-scale-canvas .price-card h3,.offer-scale-canvas .stationary-pricing-grid .price-card h3{margin:14px 0 16px!important;font-size:31px!important;line-height:1.2!important;}
    .offer-scale-canvas .price-card--featured h3{margin-top:18px!important;}
    .offer-scale-canvas .price{gap:10px!important;line-height:1.1!important;}
    .offer-scale-canvas .price strong{font-size:57px!important;}
    .offer-scale-canvas .price span{font-size:15px!important;}
    .offer-scale-canvas .price-equivalent{margin-bottom:18px!important;font-size:12px!important;}
    .offer-scale-canvas .price-intro{margin-bottom:22px!important;font-size:15px!important;line-height:1.62!important;}
    .offer-scale-canvas .price-card ul{margin:0 0 28px!important;padding:22px 0 0!important;gap:12px!important;border-top:1px solid var(--line)!important;}
    .offer-scale-canvas .price-card li,.offer-scale-canvas .stationary-pricing-grid .price-card li{padding-left:24px!important;font-size:13px!important;line-height:1.45!important;}
    .offer-scale-canvas .price-card .button{min-height:52px!important;margin-top:auto!important;font-size:14px!important;}
    .offer-scale-canvas .offer-stationary-link--below{margin-top:20px!important;font-size:13px!important;text-align:center!important;}
    .offer-scale-canvas .reassurance{margin-top:18px!important;padding:18px!important;gap:12px!important;border-radius:18px!important;}
    .offer-scale-canvas .reassurance strong{font-size:15px!important;}
    .offer-scale-canvas .reassurance p{font-size:13px!important;line-height:1.52!important;}
}


/* ==========================================================
   Mobile v86 — centered public sections + tighter spacing
   ========================================================== */
@media (max-width:700px){
    /* Tighter section rhythm on phones. */
    .section{padding:34px 0!important;}
    .hero.section{padding:18px 0 22px!important;}
    .transformations.section{padding:30px 0!important;}
    .offer.section,.about.section,.contact.section{padding:32px 0!important;}
    .section-heading{margin-bottom:18px!important;}
    .section-heading h2{margin-bottom:0!important;}
    .section-heading--split{gap:12px!important;}

    /* Slightly tighter gap after the scaled hero on mobile. */
    .hero-scale-stage{margin-bottom:0!important;}

    /* Keep offer visually centered like desktop, not pulled to the left. */
    .offer.section>.container{
        width:100%!important;
        max-width:none!important;
        display:flex!important;
        flex-direction:column!important;
        align-items:center!important;
    }
    .offer .section-heading--center{align-self:center!important;text-align:center!important;}
    .offer .section-heading--center .eyebrow{justify-content:center!important;}
    .offer-scale-stage{
        width:min(calc(100% - 24px), 760px)!important;
        margin:0 auto!important;
        display:grid!important;
        place-items:start center!important;
        overflow:visible!important;
    }
    .offer-scale-canvas{
        margin:0 auto!important;
        transform-origin:top center!important;
    }
    .offer-scale-canvas[data-scale-mode="zoom"]{
        display:block!important;
        margin-left:auto!important;
        margin-right:auto!important;
    }
    .offer-scale-canvas .section-heading--center{text-align:center!important;}
    .offer-scale-canvas .section-heading--center .eyebrow{justify-content:center!important;}
    .offer-scale-canvas .offer-configurator{
        margin:0 auto 24px!important;
        max-width:760px!important;
    }
    .offer-scale-canvas .offer-choice{text-align:center!important;}
    .offer-scale-canvas .offer-choice legend{text-align:center!important;}
    .offer-scale-canvas .pricing-grid{
        margin:0 auto!important;
    }
    .offer-scale-canvas .offer-stationary-link--below,
    .offer-scale-canvas .reassurance{
        margin-left:auto!important;
        margin-right:auto!important;
    }

    /* General public-page tightening so sections feel connected on phone. */
    .transformations .section-heading,
    .about .section-heading,
    .contact .section-heading,
    .offer .section-heading{margin-bottom:18px!important;}
    .about-grid,.contact-grid{gap:22px!important;}
    .values-list{margin:16px 0!important;}
    .reassurance{margin-top:14px!important;}
    .transform-set{gap:18px!important;}
    .slider-controls{margin-top:12px!important;}
}

@media (max-width:420px){
    .section{padding:30px 0!important;}
    .hero.section{padding:16px 0 18px!important;}
    .transformations.section,.offer.section,.about.section,.contact.section{padding:28px 0!important;}
    .section-heading{margin-bottom:16px!important;}
    .about-grid,.contact-grid{gap:18px!important;}
}


/* ==========================================================
   Offer v87 — czytelny 3-krokowy konfigurator w stylistyce marki
   ========================================================== */
.offer-panel{
    width:min(100%, 920px);
    margin:0 auto;
    padding:26px;
    border:1px solid rgba(109,43,76,.12);
    border-radius:30px;
    background:linear-gradient(180deg, rgba(250,244,247,.88), #fff 52%);
    box-shadow:0 20px 55px rgba(81,36,59,.08);
}
.offer-panel__steps{display:grid;gap:24px;}
.offer-panel .offer-choice{min-width:0;margin:0;padding:0;border:0;text-align:center;}
.offer-panel .offer-choice legend{
    width:100%;
    margin:0 0 10px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    color:var(--ink);
    font-size:13px;
    font-weight:850;
    line-height:1.35;
}
.offer-panel .offer-choice legend>span{
    width:24px;
    height:24px;
    display:inline-grid;
    place-items:center;
    border-radius:50%;
    background:var(--green-700);
    color:#fff;
    font-size:11px;
    font-weight:900;
}
.offer-panel .offer-segmented{
    padding:5px;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:5px;
    border:1px solid rgba(109,43,76,.15);
    border-radius:20px;
    background:#fff;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 7px 20px rgba(81,36,59,.035);
}
.offer-panel .offer-segmented--duration{grid-template-columns:repeat(4,minmax(0,1fr));}
.offer-panel .offer-segmented--packages{grid-template-columns:repeat(3,minmax(0,1fr));position:relative;overflow:visible;}
.offer-panel .offer-segmented button{
    position:relative;
    min-height:52px;
    padding:10px 13px;
    border:1px solid transparent;
    border-radius:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    background:transparent;
    color:var(--ink);
    cursor:pointer;
    font-size:13px;
    font-weight:800;
    line-height:1.2;
    white-space:nowrap;
    transition:background .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.offer-panel .offer-segmented button:hover{color:var(--green-700);background:rgba(250,244,247,.65);}
.offer-panel .offer-segmented button.is-active{
    border-color:var(--green-600);
    background:var(--green-50);
    color:var(--green-800);
    box-shadow:0 7px 18px rgba(81,36,59,.10);
}
.offer-panel .offer-segmented button:active{transform:scale(.985);}
.offer-option-icon{
    width:23px;
    height:23px;
    display:inline-grid;
    place-items:center;
    border:1px solid rgba(109,43,76,.20);
    border-radius:50%;
    color:var(--green-700);
    font-size:12px;
    font-weight:900;
    line-height:1;
}
.offer-panel .offer-segmented button.is-active .offer-option-icon{border-color:rgba(109,43,76,.28);background:#fff;}
.offer-panel .offer-segmented--packages button small{
    position:absolute;
    top:-24px;
    left:50%;
    padding:5px 11px;
    border-radius:9px 9px 0 0;
    background:var(--green-700);
    color:#fff;
    font-size:7px;
    font-weight:900;
    letter-spacing:.08em;
    line-height:1;
    text-transform:uppercase;
    transform:translateX(-50%);
    white-space:nowrap;
}
.offer-panel .offer-choice--packages{padding-top:18px;}
.offer-package-detail{
    width:100%;
    max-width:none;
    margin:24px 0 0;
    display:block;
}
.offer-package-detail .price-card{
    width:100%;
    min-height:0;
    padding:30px;
    border:1px solid rgba(109,43,76,.16);
    border-radius:24px;
    background:#fff;
    box-shadow:none;
    overflow:hidden;
}
.offer-package-detail .price-card[hidden]{display:none!important;}
.offer-package-detail .price-card--featured{padding-top:38px;border:2px solid var(--green-600);box-shadow:0 18px 46px rgba(81,36,59,.09);}
.offer-package-detail .popular-badge{font-size:8px;}
.offer-package-detail .price-card__head{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:end;
    gap:8px 24px;
}
.offer-package-detail .price-label{margin:0 0 4px;}
.offer-package-detail .price-card h3{margin:0;color:var(--ink);font-size:34px;line-height:1.05;}
.offer-package-detail .price{margin:0;justify-content:flex-end;text-align:right;}
.offer-package-detail .price strong{font-size:44px;}
.offer-package-detail .price-equivalent{grid-column:2;margin:0;text-align:right;}
.offer-package-detail .price-intro{
    min-height:0;
    max-width:650px;
    margin:18px 0 20px;
    color:var(--muted);
    font-size:14px;
    line-height:1.6;
}
.offer-package-detail .button{max-width:100%;min-height:54px;margin:0;}
.offer-package-detail .price-card__features{margin-top:24px;padding-top:20px;border-top:1px solid var(--line);}
.offer-package-detail .price-card__features-title{
    display:block;
    margin-bottom:12px;
    color:var(--green-700);
    font-size:10px;
    font-weight:900;
    letter-spacing:.11em;
    text-transform:uppercase;
}
.offer-package-detail .price-card ul{
    margin:0;
    padding:0;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:11px 22px;
    border:0;
}
.offer-package-detail .price-card li{font-size:13px;line-height:1.45;}
.offer .offer-stationary-link--below{margin-top:18px;}
.offer .reassurance{margin-top:18px;}

@media (max-width:700px){
    .offer.section>.container{display:block!important;width:min(calc(100% - 24px),var(--container))!important;max-width:var(--container)!important;}
    .offer .section-heading--center{text-align:center!important;}
    .offer .section-heading--center .eyebrow{justify-content:center!important;}
    .offer .section-heading--center>p:last-child{max-width:420px;margin:10px auto 0!important;text-align:center!important;}
    .offer-panel{width:100%;padding:18px 14px;border-radius:24px;box-shadow:0 14px 36px rgba(81,36,59,.07);}
    .offer-panel__steps{gap:21px;}
    .offer-panel .offer-choice legend{margin-bottom:8px;font-size:12px;}
    .offer-panel .offer-choice legend>span{width:22px;height:22px;font-size:10px;}
    .offer-panel .offer-segmented{padding:4px;border-radius:18px;gap:4px;}
    .offer-panel .offer-segmented button{min-height:48px;padding:8px 7px;border-radius:14px;font-size:11.5px;}
    .offer-option-icon{width:20px;height:20px;font-size:10px;}
    .offer-panel .offer-segmented--packages button small{top:-21px;padding:5px 8px;font-size:6px;}
    .offer-panel .offer-choice--packages{padding-top:16px;}
    .offer-package-detail{margin-top:18px;}
    .offer-package-detail .price-card{padding:22px 17px 18px;border-radius:20px;}
    .offer-package-detail .price-card--featured{padding-top:32px;}
    .offer-package-detail .price-card__head{grid-template-columns:1fr;gap:5px;}
    .offer-package-detail .price-card h3{font-size:28px;}
    .offer-package-detail .price{justify-content:flex-start;text-align:left;}
    .offer-package-detail .price strong{font-size:39px;}
    .offer-package-detail .price span{font-size:11px;}
    .offer-package-detail .price-equivalent{grid-column:1;text-align:left;font-size:11px;}
    .offer-package-detail .price-intro{margin:14px 0 16px;font-size:12.8px;line-height:1.55;}
    .offer-package-detail .button{min-height:50px;font-size:12.5px;}
    .offer-package-detail .price-card__features{margin-top:19px;padding-top:17px;}
    .offer-package-detail .price-card ul{grid-template-columns:1fr;gap:9px;}
    .offer-package-detail .price-card li{font-size:12.4px;}
}

@media (max-width:380px){
    .offer-panel{padding:16px 11px;}
    .offer-panel .offer-segmented button{font-size:10.5px;}
    .offer-panel .offer-segmented--duration button{font-size:10px;}
    .offer-option-icon{display:none;}
}


/* ==========================================================
   Mobile v88 — native hero + arch about visual + stationary panel
   ========================================================== */
/* New hero structure: desktop remains two-column, visual spans both text rows. */
.hero-grid{grid-template-areas:"copy visual" "details visual";row-gap:0;}
.hero-copy{grid-area:copy;}
.hero-details{grid-area:details;position:relative;z-index:2;}
.hero-visual{grid-area:visual;}

.stationary-offer-panel{width:min(100%,920px);margin:30px auto 0;}
.stationary-offer-choice{padding-top:18px!important;}
.stationary-package-detail .stationary-card__note{margin:18px 0 0;padding-top:17px;border-top:1px solid var(--line);}
.stationary-package-detail .price-card__features{margin-top:24px;}
.stationary-package-detail .price-card[hidden]{display:none!important;}

@media (max-width:700px){
    /* Native mobile hero — no desktop canvas scaling, no zoom/transform blur. */
    .hero.section{
        min-height:0!important;
        padding:24px 0 30px!important;
        overflow:visible!important;
    }
    .hero-grid{
        width:min(calc(100% - 24px),var(--container))!important;
        max-width:var(--container)!important;
        margin:0 auto!important;
        display:grid!important;
        grid-template-columns:1fr!important;
        grid-template-areas:"copy" "visual" "details"!important;
        align-items:start!important;
        gap:16px!important;
        transform:none!important;
        zoom:1!important;
    }
    .hero-copy,.hero-details,.hero-visual{
        width:100%!important;
        max-width:none!important;
        min-width:0!important;
        transform:none!important;
        zoom:1!important;
    }
    .hero .reveal,.hero .reveal--delay{
        opacity:1!important;
        transform:none!important;
        transition:none!important;
    }
    .hero .eyebrow{
        margin:0 0 10px!important;
        gap:9px!important;
        font-size:9px!important;
        line-height:1.35!important;
        letter-spacing:.13em!important;
    }
    .hero .eyebrow>span{width:22px!important;height:2px!important;}
    .hero h1{
        max-width:560px!important;
        margin:0!important;
        font-size:clamp(39px,10.4vw,47px)!important;
        line-height:1.005!important;
        letter-spacing:-.04em!important;
    }
    .hero-visual{
        margin:2px 0 0!important;
        display:grid!important;
        gap:0!important;
        overflow:hidden!important;
        border-radius:26px!important;
        background:#fff!important;
        box-shadow:0 18px 44px rgba(81,36,59,.12)!important;
        filter:none!important;
    }
    .hero-visual__media{overflow:hidden!important;border-radius:26px 26px 0 0!important;}
    .hero-photo{
        position:relative!important;
        width:100%!important;
        height:auto!important;
        min-height:0!important;
        aspect-ratio:4 / 3.15!important;
        overflow:hidden!important;
        border-radius:26px 26px 0 0!important;
        box-shadow:none!important;
        background:#eef2f6!important;
    }
    .hero-photo img{
        position:absolute!important;
        inset:0!important;
        width:100%!important;
        height:100%!important;
        object-fit:cover!important;
        object-position:54% 44%!important;
        transform:none!important;
        -webkit-transform:none!important;
        filter:none!important;
        backface-visibility:visible!important;
        -webkit-backface-visibility:visible!important;
    }
    .hero-photo__shade{
        display:block!important;
        position:absolute!important;
        z-index:1!important;
        inset:auto 0 0!important;
        height:42%!important;
        background:linear-gradient(to top,rgba(20,13,17,.62),rgba(20,13,17,0))!important;
        pointer-events:none!important;
    }
    .hero-motto{
        position:absolute!important;
        z-index:2!important;
        right:20px!important;
        bottom:18px!important;
        left:20px!important;
        max-width:330px!important;
        margin:0!important;
        color:#fff!important;
        font-size:20px!important;
        line-height:1.28!important;
        text-shadow:0 2px 11px rgba(0,0,0,.38)!important;
    }
    .hero-motto cite{
        display:block!important;
        margin-top:7px!important;
        color:rgba(255,255,255,.9)!important;
        font-size:8px!important;
        letter-spacing:.11em!important;
    }
    .home-social{
        position:relative!important;
        width:100%!important;
        margin:0!important;
        padding:12px 15px!important;
        display:grid!important;
        grid-template-columns:minmax(0,1fr) auto!important;
        align-items:center!important;
        gap:12px!important;
        border:0!important;
        border-radius:0 0 26px 26px!important;
        background:#fff!important;
        box-shadow:none!important;
        text-align:left!important;
        backdrop-filter:none!important;
    }
    .home-social::before{content:""!important;display:block!important;position:absolute!important;top:0!important;right:15px!important;left:15px!important;height:1px!important;background:rgba(124,41,82,.10)!important;}
    .home-social__heading{display:grid!important;width:auto!important;}
    .home-social__eyebrow{display:block!important;font-size:8px!important;letter-spacing:.11em!important;}
    .home-social__icons{display:flex!important;flex-wrap:nowrap!important;justify-content:flex-end!important;gap:7px!important;}
    .home-social__icons .social-icon-link{width:34px!important;height:34px!important;min-width:34px!important;background:#fff!important;}

    .hero-details{padding-top:1px!important;}
    .hero-lead{
        max-width:none!important;
        margin:0 0 18px!important;
        font-size:15px!important;
        line-height:1.58!important;
    }
    .check-list{margin:0 0 20px!important;gap:10px!important;}
    .check-list li{gap:10px!important;font-size:13.5px!important;line-height:1.45!important;}
    .check-list li span{width:20px!important;height:20px!important;flex:0 0 20px!important;font-size:11px!important;}
    .hero-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;}
    .hero-actions .button{width:100%!important;min-height:50px!important;padding:12px 11px!important;font-size:12.5px!important;}

    /* Restore the distinctive arched portrait from desktop instead of a rounded square. */
    .about-visual{
        position:relative!important;
        width:min(100%,360px)!important;
        height:auto!important;
        min-height:0!important;
        aspect-ratio:4 / 5.45!important;
        margin:8px auto 0!important;
        overflow:visible!important;
    }
    .about-visual::before{
        content:""!important;
        display:block!important;
        position:absolute!important;
        top:-10px!important;
        right:0!important;
        bottom:0!important;
        width:76%!important;
        border-radius:220px 220px 28px 28px!important;
        background:var(--green-100)!important;
    }
    .about-visual>img{
        position:absolute!important;
        z-index:1!important;
        inset:0 22px 0 0!important;
        width:calc(100% - 22px)!important;
        height:100%!important;
        border-radius:200px 200px 24px 24px!important;
        object-fit:cover!important;
        object-position:center 30%!important;
        box-shadow:var(--shadow-md)!important;
        transform:none!important;
        filter:none!important;
    }
    .credentials-panel{
        position:absolute!important;
        z-index:2!important;
        left:0!important;
        right:22px!important;
        bottom:0!important;
        display:grid!important;
        grid-template-columns:1.35fr .7fr 1fr!important;
        border:0!important;
        border-top:1px solid rgba(109,43,76,.12)!important;
        border-radius:0 0 24px 24px!important;
        background:rgba(255,255,255,.94)!important;
        overflow:hidden!important;
        backdrop-filter:none!important;
    }
    .credentials-panel__item{min-height:50px!important;padding:8px 7px!important;}
    .credentials-panel__item+.credentials-panel__item{border-top:0!important;border-left:1px solid rgba(109,43,76,.12)!important;}
    .credentials-panel__item strong{font-size:8.2px!important;line-height:1.22!important;}

    /* Stationary offer uses the same clear panel language as online. */
    .stationary-offer-panel{width:100%!important;margin-top:20px!important;padding:18px 14px!important;border-radius:24px!important;}
    .stationary-offer-choice{padding-top:16px!important;}
    .stationary-offer-segmented button{font-size:11px!important;}
    .stationary-package-detail{margin-top:18px!important;}
    .stationary-package-detail .price-card{padding:22px 17px 18px!important;border-radius:20px!important;}
    .stationary-package-detail .price-card--featured{padding-top:32px!important;}
    .stationary-package-detail .price-card__head{grid-template-columns:1fr!important;gap:5px!important;}
    .stationary-package-detail .price-card h3{font-size:28px!important;}
    .stationary-package-detail .price{justify-content:flex-start!important;text-align:left!important;}
    .stationary-package-detail .price strong{font-size:39px!important;}
    .stationary-package-detail .price span{font-size:11px!important;}
    .stationary-package-detail .price-intro{margin:14px 0 16px!important;font-size:12.8px!important;line-height:1.55!important;}
    .stationary-package-detail .button{min-height:50px!important;font-size:12.5px!important;}
    .stationary-package-detail .price-card__features{margin-top:19px!important;padding-top:17px!important;}
    .stationary-package-detail .price-card ul{grid-template-columns:1fr!important;gap:9px!important;}
    .stationary-package-detail .price-card li{font-size:12.4px!important;}
    .stationary-package-detail .stationary-card__note{margin-top:16px!important;padding-top:15px!important;font-size:11.8px!important;line-height:1.5!important;}
}

@media (max-width:360px){
    .hero h1{font-size:clamp(35px,10vw,41px)!important;}
    .hero-photo{aspect-ratio:4 / 3.35!important;}
    .hero-motto{right:16px!important;bottom:15px!important;left:16px!important;font-size:17px!important;}
    .hero-actions{grid-template-columns:1fr!important;}
    .home-social{grid-template-columns:1fr!important;text-align:center!important;}
    .home-social__icons{justify-content:center!important;}
    .stationary-offer-segmented button{font-size:10px!important;padding-inline:5px!important;}
}

/* ===== v89: compact mobile patient-panel section switcher ===== */
.dashboard-mobile-switcher{display:none;}

@media (max-width:700px){
    body.patient-panel-viewport .dashboard-sidebar,
    body.patient-chat-viewport .dashboard-sidebar{
        overflow:visible !important;
    }

    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-nav,
    body.patient-chat-viewport .dashboard-sidebar .dashboard-panel-nav{
        display:none !important;
    }

    body.patient-panel-viewport .dashboard-mobile-switcher,
    body.patient-chat-viewport .dashboard-mobile-switcher{
        display:block;
        width:100%;
        margin:0;
        border:1px solid rgba(230,223,227,.96);
        border-right:0;
        border-left:0;
        background:rgba(255,255,255,.98);
        box-shadow:0 9px 24px rgba(81,36,59,.07);
        backdrop-filter:blur(16px);
        -webkit-backdrop-filter:blur(16px);
    }

    body.patient-panel-viewport .dashboard-mobile-switcher > summary,
    body.patient-chat-viewport .dashboard-mobile-switcher > summary{
        box-sizing:border-box;
        width:100%;
        min-height:58px;
        padding:8px 14px;
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:12px;
        list-style:none;
        cursor:pointer;
        -webkit-tap-highlight-color:transparent;
    }

    body.patient-panel-viewport .dashboard-mobile-switcher > summary::-webkit-details-marker,
    body.patient-chat-viewport .dashboard-mobile-switcher > summary::-webkit-details-marker{display:none;}

    .dashboard-mobile-switcher__current{
        min-width:0;
        display:grid;
        gap:1px;
    }

    .dashboard-mobile-switcher__caption{
        color:#8b7d85;
        font-size:9px;
        font-weight:850;
        line-height:1.1;
        letter-spacing:.12em;
        text-transform:uppercase;
    }

    .dashboard-mobile-switcher__current strong{
        min-width:0;
        overflow:hidden;
        color:var(--ink);
        font-size:15px;
        font-weight:800;
        line-height:1.2;
        text-overflow:ellipsis;
        white-space:nowrap;
    }

    .dashboard-mobile-switcher__action{
        flex:0 0 auto;
        min-height:36px;
        padding:7px 11px 7px 13px;
        display:inline-flex;
        align-items:center;
        gap:6px;
        border:1px solid rgba(109,43,76,.13);
        border-radius:999px;
        background:rgba(109,43,76,.07);
        color:var(--green-800);
        font-size:11px;
        font-weight:800;
    }

    .dashboard-mobile-switcher__action svg{
        width:15px;
        height:15px;
        overflow:visible;
        fill:none;
        stroke:currentColor;
        stroke-width:1.8;
        stroke-linecap:round;
        stroke-linejoin:round;
        transition:transform .2s ease;
    }

    .dashboard-mobile-switcher[open] .dashboard-mobile-switcher__action svg{transform:rotate(180deg);}

    .dashboard-mobile-switcher__menu{
        box-sizing:border-box;
        width:100%;
        padding:0 12px 12px;
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:7px;
    }

    .dashboard-mobile-switcher__menu a{
        box-sizing:border-box;
        min-width:0;
        min-height:43px;
        padding:9px 11px;
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:7px;
        border:1px solid var(--line);
        border-radius:13px;
        background:#fff;
        color:var(--ink);
        font-size:11.5px;
        font-weight:750;
        line-height:1.2;
        text-decoration:none;
        overflow:hidden;
    }

    .dashboard-mobile-switcher__menu a > span:first-child{
        min-width:0;
        overflow-wrap:anywhere;
    }

    .dashboard-mobile-switcher__menu a.is-active{
        border-color:var(--green-700);
        background:var(--green-700);
        color:#fff;
        box-shadow:0 7px 15px rgba(109,43,76,.16);
    }

    .dashboard-mobile-switcher__menu a.is-active .dashboard-panel-nav__badge{
        background:#fff;
        color:var(--green-800);
    }

    .dashboard-mobile-switcher__menu a.dashboard-mobile-switcher__locked{
        background:#f4f1f3;
        color:#999096;
    }
}

@media (max-width:370px){
    body.patient-panel-viewport .dashboard-mobile-switcher > summary,
    body.patient-chat-viewport .dashboard-mobile-switcher > summary{padding-inline:12px;}
    .dashboard-mobile-switcher__menu{padding-inline:10px;gap:6px;}
    .dashboard-mobile-switcher__menu a{padding-inline:9px;font-size:11px;}
}


/* v90: bardziej zwarte ułożenie stopki na tabletach i w węższym desktopie */
@media (max-width: 1280px){
    .site-footer--compact .footer-main{
        min-height:0;
        padding-top:24px;
        padding-bottom:24px;
        grid-template-columns:minmax(0,1fr) minmax(0,1fr);
        grid-template-areas:
            "brand brand"
            "nav contact"
            "social cookie"
            "meta meta";
        align-items:start;
        column-gap:28px;
        row-gap:18px;
    }
    .site-footer--compact .footer-brand-block{grid-area:brand;}
    .site-footer--compact .footer-nav{
        grid-area:nav;
        width:100%;
        grid-template-columns:repeat(2, minmax(0, max-content));
        align-items:start;
        justify-content:start;
        column-gap:24px;
        row-gap:9px;
    }
    .site-footer--compact .footer-contact-block{
        grid-area:contact;
        display:grid;
        align-content:start;
        justify-items:start;
        gap:9px;
    }
    .site-footer--compact .footer-contact-block__items{
        display:grid;
        gap:6px;
    }
    .site-footer--compact .footer-contact-block__items a{
        white-space:normal;
        overflow-wrap:anywhere;
    }
    .site-footer--compact .footer-social-block{
        grid-area:social;
        grid-template-columns:auto 1fr;
        justify-content:start;
        justify-self:start;
        align-items:center;
        gap:12px;
    }
    .site-footer--compact .footer-social-block .footer-social__icons{
        justify-content:flex-start;
        flex-wrap:wrap;
    }
    .site-footer--compact .footer-cookie-block{
        grid-area:cookie;
        justify-content:flex-start;
        justify-self:start;
        align-self:center;
    }
    .site-footer--compact .footer-meta-block{
        grid-area:meta;
        display:grid;
        justify-self:start;
        gap:6px;
        text-align:left;
    }
    .site-footer--compact .footer-meta-block span{display:block;}
}

@media (max-width: 900px){
    .site-footer--compact .footer-main{
        grid-template-columns:1fr;
        grid-template-areas:
            "brand"
            "nav"
            "contact"
            "cookie"
            "social"
            "meta";
        row-gap:14px;
    }
    .site-footer--compact .footer-nav{grid-template-columns:repeat(2,minmax(0,1fr));}
}


/* v91: stopka mobilna ma być krótka i zwarta, nie pionowy "plakat" */
@media (max-width: 760px){
    .site-footer--compact{padding:0 !important;}
    .site-footer--compact .container.footer-main{
        width:min(calc(100% - 28px), var(--container));
        min-height:0 !important;
        padding:18px 0 calc(18px + env(safe-area-inset-bottom)) !important;
        display:grid !important;
        grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr) !important;
        grid-template-areas:
            "brand brand"
            "nav contact"
            "cookie social"
            "meta meta" !important;
        column-gap:18px !important;
        row-gap:13px !important;
        align-items:start !important;
    }
    .site-footer--compact .footer-brand-block{
        grid-area:brand !important;
        margin:0 !important;
        min-height:0 !important;
    }
    .site-footer--compact .brand--footer .brand__name{font-size:20px !important;}
    .site-footer--compact .brand--footer .brand__role{margin-top:4px !important;font-size:7px !important;}

    .site-footer--compact .footer-nav{
        grid-area:nav !important;
        width:100% !important;
        margin:0 !important;
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:7px 12px !important;
        align-content:start !important;
    }
    .site-footer--compact .footer-nav a{
        width:auto !important;
        margin:0 !important;
        padding:0 !important;
        font-size:10px !important;
        line-height:1.25 !important;
    }

    .site-footer--compact .footer-contact-block{
        grid-area:contact !important;
        margin:0 !important;
        display:grid !important;
        gap:7px !important;
        align-content:start !important;
        justify-items:start !important;
    }
    .site-footer--compact .footer-section-label{
        margin:0 !important;
        font-size:7px !important;
        line-height:1.2 !important;
        letter-spacing:.14em !important;
    }
    .site-footer--compact .footer-contact-block__items{
        display:grid !important;
        gap:4px !important;
        margin:0 !important;
    }
    .site-footer--compact .footer-contact-block__items a{
        width:auto !important;
        margin:0 !important;
        font-size:10px !important;
        line-height:1.3 !important;
        white-space:normal !important;
        overflow-wrap:anywhere !important;
    }

    .site-footer--compact .footer-cookie-block{
        grid-area:cookie !important;
        margin:0 !important;
        display:flex !important;
        align-items:center !important;
        justify-content:flex-start !important;
        min-height:32px !important;
    }
    .site-footer--compact .footer-cookie-block .footer-cookie-settings{
        min-height:0 !important;
        height:auto !important;
        margin:0 !important;
        padding:0 !important;
        border:0 !important;
        background:transparent !important;
        font-size:10px !important;
        line-height:1.25 !important;
    }

    .site-footer--compact .footer-social-block{
        grid-area:social !important;
        margin:0 !important;
        display:flex !important;
        align-items:center !important;
        justify-content:flex-start !important;
        justify-self:start !important;
        gap:8px !important;
        min-width:0 !important;
    }
    .site-footer--compact .footer-social-block .footer-section-label{display:none !important;}
    .site-footer--compact .footer-social-block .footer-social__icons{
        display:flex !important;
        flex-wrap:nowrap !important;
        justify-content:flex-start !important;
        gap:5px !important;
    }
    .site-footer--compact .footer-social-block .social-icon-link{
        width:30px !important;
        height:30px !important;
        min-width:30px !important;
        min-height:30px !important;
    }
    .site-footer--compact .footer-social-block .social-icon-link svg{
        width:13px !important;
        height:13px !important;
    }

    .site-footer--compact .footer-meta-block{
        grid-area:meta !important;
        margin:0 !important;
        padding-top:11px !important;
        border-top:1px solid rgba(255,255,255,.10) !important;
        display:flex !important;
        flex-wrap:wrap !important;
        align-items:center !important;
        justify-content:space-between !important;
        gap:6px 12px !important;
        text-align:left !important;
    }
    .site-footer--compact .footer-meta-block span{
        margin:0 !important;
        font-size:8px !important;
        line-height:1.35 !important;
    }
    .site-footer--compact .footer-meta-block span:last-child{
        max-width:62ch !important;
    }
}

@media (max-width: 430px){
    .site-footer--compact .container.footer-main{
        width:calc(100% - 24px) !important;
        grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
        column-gap:12px !important;
        row-gap:12px !important;
    }
    .site-footer--compact .footer-nav{gap:6px 8px !important;}
    .site-footer--compact .footer-nav a,
    .site-footer--compact .footer-contact-block__items a,
    .site-footer--compact .footer-cookie-block .footer-cookie-settings{font-size:9.5px !important;}
    .site-footer--compact .footer-social-block{gap:5px !important;}
    .site-footer--compact .footer-social-block .footer-social__icons{gap:4px !important;}
    .site-footer--compact .footer-social-block .social-icon-link{
        width:28px !important;
        height:28px !important;
        min-width:28px !important;
        min-height:28px !important;
    }
    .site-footer--compact .footer-meta-block{
        display:grid !important;
        justify-content:start !important;
        gap:4px !important;
    }
}


/* v92: Cookies jako element listy linków pod „Odstąpienie” na mobile i desktop */
.footer-cookie-block{display:none !important;}
.footer-nav .footer-cookie-settings,
.footer-nav .footer-cookie-settings--nav{
    width:fit-content;
    padding:0;
    border:0;
    background:none;
    color:rgba(255,255,255,.82);
    font:inherit;
    font-size:9px;
    font-weight:inherit;
    line-height:1.2;
    text-align:left;
    cursor:pointer;
    transition:color .18s ease, transform .18s ease;
}
.footer-nav .footer-cookie-settings:hover,
.footer-nav .footer-cookie-settings:focus-visible,
.footer-nav .footer-cookie-settings--nav:hover,
.footer-nav .footer-cookie-settings--nav:focus-visible{
    color:#fff;
    transform:translateY(-1px);
}
@media (min-width: 1121px){
    .site-footer--compact .footer-main{
        position:relative;
        grid-template-columns:140px minmax(220px, 1fr) minmax(255px, 1fr) 105px minmax(270px, 1.15fr);
        grid-template-areas:"brand nav contact social meta";
        column-gap:clamp(18px, 2vw, 32px);
        row-gap:0;
        align-items:center;
    }
    .site-footer--compact .footer-brand-block{grid-area:brand;}
    .site-footer--compact .footer-nav{grid-area:nav;}
    .site-footer--compact .footer-contact-block{grid-area:contact;justify-self:start;}
    .site-footer--compact .footer-social-block{grid-area:social;justify-self:center;justify-content:center;}
    .site-footer--compact .footer-meta-block{grid-area:meta;justify-self:end;display:grid;gap:4px;text-align:right;}
    .site-footer--compact .footer-meta-block span{display:block;}
}
@media (max-width: 1120px) and (min-width: 761px){
    .site-footer--compact .footer-main{
        grid-template-columns:minmax(150px, .8fr) minmax(260px, 1.2fr);
        grid-template-areas:"brand nav"
                            "contact social"
                            "meta meta";
        gap:16px 28px;
    }
    .site-footer--compact .footer-brand-block{grid-area:brand;}
    .site-footer--compact .footer-nav{grid-area:nav;}
    .site-footer--compact .footer-contact-block{grid-area:contact;}
    .site-footer--compact .footer-social-block{grid-area:social;justify-content:flex-end;}
    .site-footer--compact .footer-meta-block{grid-area:meta;}
}
@media (max-width: 760px){
    .site-footer--compact .footer-nav .footer-cookie-settings,
    .site-footer--compact .footer-nav .footer-cookie-settings--nav{
        justify-self:start;
    }
}


/* v93: ciaśniejsza dolna meta-stopka i inline rok w copyright */
.site-footer--compact .footer-meta-block [data-current-year]{display:inline !important;}
.site-footer--compact .footer-meta-block > span:first-child{display:block;}

@media (max-width: 760px){
    .site-footer--compact .footer-meta-block{
        gap:2px;
    }
    .site-footer--compact .footer-meta-block > span:first-child{
        font-size:8px;
        line-height:1.2;
        letter-spacing:0;
    }
    .site-footer--compact .footer-meta-block > span:last-child{
        font-size:8px;
        line-height:1.32;
    }
}


/* v94: mobile patient panel — usunięty szeroki pasek „Panel / Dashboard”; tylko przycisk Panel u góry */
@media (max-width:700px){
    body.patient-panel-viewport .dashboard.section,
    body.patient-chat-viewport .dashboard.section{
        padding-top:8px;
    }

    body.patient-panel-viewport .dashboard-layout,
    body.patient-chat-viewport .dashboard-layout{
        gap:8px !important;
    }

    body.patient-panel-viewport .dashboard-sidebar,
    body.patient-chat-viewport .dashboard-sidebar{
        height:52px !important;
        min-height:52px !important;
        margin:0 -12px !important;
        overflow:visible !important;
        background:transparent !important;
    }

    body.patient-panel-viewport .dashboard-sidebar__panel,
    body.patient-chat-viewport .dashboard-sidebar__panel{
        height:52px !important;
        min-height:52px !important;
        display:block !important;
        overflow:visible !important;
        background:transparent !important;
    }

    body.patient-panel-viewport .dashboard-mobile-switcher,
    body.patient-chat-viewport .dashboard-mobile-switcher{
        position:relative;
        width:100%;
        height:52px;
        margin:0;
        border:0 !important;
        background:transparent !important;
        box-shadow:none !important;
        backdrop-filter:none !important;
        -webkit-backdrop-filter:none !important;
    }

    body.patient-panel-viewport .dashboard-mobile-switcher > summary,
    body.patient-chat-viewport .dashboard-mobile-switcher > summary{
        width:100%;
        min-height:52px;
        height:52px;
        padding:0 14px !important;
        justify-content:flex-end !important;
        background:transparent !important;
    }

    .dashboard-mobile-switcher__current{display:none !important;}

    .dashboard-mobile-switcher__action{
        min-height:40px;
        padding:9px 13px 9px 15px;
        gap:7px;
        border:1px solid rgba(109,43,76,.15);
        background:rgba(250,244,247,.96);
        font-size:12.5px;
        font-weight:850;
        box-shadow:0 6px 16px rgba(81,36,59,.06);
    }

    .dashboard-mobile-switcher__action svg{
        width:16px;
        height:16px;
    }

    .dashboard-mobile-switcher__menu{
        position:absolute;
        z-index:140;
        top:calc(100% + 4px);
        right:12px;
        left:12px;
        width:auto;
        padding:10px;
        border:1px solid rgba(230,223,227,.96);
        border-radius:18px;
        background:rgba(255,255,255,.985);
        box-shadow:0 20px 42px rgba(81,36,59,.14);
        backdrop-filter:blur(16px);
        -webkit-backdrop-filter:blur(16px);
    }
}


/* v95: mobilny przycisk Panel przeniesiony do headera, po lewej od dzwonka */
@media (max-width: 700px){
    body.patient-panel-viewport .dashboard-sidebar__panel,
    body.patient-chat-viewport .dashboard-sidebar__panel{
        height:0 !important;
        min-height:0 !important;
        overflow:visible !important;
    }

    body.patient-panel-viewport .dashboard-sidebar .dashboard-panel-card--hero,
    body.patient-chat-viewport .dashboard-sidebar .dashboard-panel-card--hero{
        display:none !important;
    }

    body.patient-panel-viewport .nav-account--logged-in .dashboard-mobile-switcher,
    body.patient-chat-viewport .nav-account--logged-in .dashboard-mobile-switcher{
        display:block !important;
        width:auto !important;
        height:auto !important;
        margin:0 !important;
        border:0 !important;
        background:transparent !important;
        box-shadow:none !important;
        backdrop-filter:none !important;
        -webkit-backdrop-filter:none !important;
        flex:0 0 auto;
        position:relative;
        overflow:visible !important;
    }

    body.patient-panel-viewport .nav-account--logged-in .dashboard-mobile-switcher > summary,
    body.patient-chat-viewport .nav-account--logged-in .dashboard-mobile-switcher > summary{
        width:auto !important;
        min-height:42px !important;
        height:42px !important;
        padding:0 !important;
        justify-content:flex-start !important;
        background:transparent !important;
    }

    body.patient-panel-viewport .nav-account--logged-in .dashboard-mobile-switcher .dashboard-mobile-switcher__action,
    body.patient-chat-viewport .nav-account--logged-in .dashboard-mobile-switcher .dashboard-mobile-switcher__action{
        min-height:42px;
        padding:9px 13px 9px 15px;
        gap:7px;
        border:1px solid rgba(109,43,76,.15);
        border-radius:999px;
        background:rgba(250,244,247,.96);
        color:var(--green-800);
        font-size:12.5px;
        font-weight:850;
        box-shadow:0 6px 16px rgba(81,36,59,.06);
    }

    body.patient-panel-viewport .nav-account--logged-in .dashboard-mobile-switcher .dashboard-mobile-switcher__action svg,
    body.patient-chat-viewport .nav-account--logged-in .dashboard-mobile-switcher .dashboard-mobile-switcher__action svg{
        width:16px;
        height:16px;
    }

    body.patient-panel-viewport .nav-account--logged-in .dashboard-mobile-switcher .dashboard-mobile-switcher__menu,
    body.patient-chat-viewport .nav-account--logged-in .dashboard-mobile-switcher .dashboard-mobile-switcher__menu{
        position:fixed;
        z-index:140;
        top:calc(var(--runtime-header-height, var(--header-height)) + 8px);
        right:12px;
        left:12px;
        width:auto;
        padding:10px;
        border:1px solid rgba(230,223,227,.96);
        border-radius:18px;
        background:rgba(255,255,255,.985);
        box-shadow:0 20px 42px rgba(81,36,59,.14);
        backdrop-filter:blur(16px);
        -webkit-backdrop-filter:blur(16px);
    }
}

/* v97: porządniejszy mobilny wygląd strony Posty */
@media (max-width: 700px){
    .posts-directory{
        padding:16px 0 56px;
        overflow-x:hidden;
    }

    .posts-directory__layout{
        gap:20px;
    }

    .posts-sidebar{
        gap:14px;
    }

    .posts-sidebar__panel{
        display:grid;
        gap:14px;
    }

    .posts-sidebar-nav,
    .posts-topic-card,
    .posts-offer-card,
    .posts-social-card{
        padding:18px;
        border-radius:22px;
        box-shadow:0 10px 28px rgba(81,36,59,.06);
    }

    .posts-sidebar-nav > span,
    .posts-topic-card__label,
    .posts-offer-card > span{
        font-size:10px;
        line-height:1.2;
        letter-spacing:.14em;
    }

    .posts-sidebar-nav h2,
    .posts-topic-card h2,
    .posts-offer-card h2,
    .posts-social-card h2,
    .posts-social-card > h2{
        margin:4px 0 12px;
        font-size:clamp(25px, 8vw, 33px);
        line-height:1.08;
    }

    .posts-sidebar-nav__buttons{
        padding-bottom:0;
        display:grid;
        grid-template-columns:repeat(2, minmax(0, 1fr));
        gap:10px;
        overflow:visible;
    }

    .posts-sidebar-nav button{
        width:100%;
        min-width:0;
        min-height:44px;
        padding:10px 12px;
        border:1px solid var(--line);
        border-radius:999px;
        display:flex;
        align-items:center;
        justify-content:center;
        text-align:center;
        font-size:13px;
        line-height:1.2;
        white-space:normal;
    }

    .posts-sidebar-nav button[data-post-filter="all"]{
        grid-column:1 / -1;
    }

    .posts-topic-card p,
    .posts-offer-card p{
        margin:0 0 14px;
        color:#6d666b;
        font-size:14px;
        line-height:1.58;
        text-wrap:pretty;
    }

    .posts-topic-card .button,
    .posts-offer-card .button{
        min-height:52px;
        border-radius:16px;
        font-size:15px;
        font-weight:800;
        box-shadow:0 10px 24px rgba(109,43,76,.12);
    }

    .posts-social-card{
        min-height:auto;
        display:grid;
        gap:12px;
        justify-content:flex-start;
        background:linear-gradient(145deg, #fff, #fbf6f8);
    }

    .posts-social-card__icons{
        justify-content:flex-start;
        flex-wrap:wrap;
        gap:10px;
    }

    .posts-social-card__icons .social-icon-link{
        width:42px;
        height:42px;
        border-color:rgba(109,43,76,.14);
    }

    .posts-feed{
        display:grid;
        gap:18px;
    }

    .post-feed-card{
        margin-bottom:0;
        border-radius:22px;
        box-shadow:0 10px 28px rgba(81,36,59,.07);
    }

    .post-feed-card__header{
        padding:18px 18px 0;
        gap:11px;
    }

    .post-feed-card__copy{
        padding:18px 18px 16px;
    }

    .post-feed-card__copy h3{
        font-size:clamp(26px, 8.2vw, 34px);
        line-height:1.12;
    }

    .post-feed-card__copy p{
        font-size:14px;
        line-height:1.62;
    }

    .post-feed-card__footer{
        padding:11px 14px 14px;
        display:grid;
        grid-template-columns:1fr;
        gap:8px;
    }

    .post-action,
    .post-action--primary,
    .post-action--share{
        width:100%;
        min-height:44px;
        margin-left:0;
        justify-content:center;
        border-radius:12px;
    }
}

@media (max-width: 390px){
    .posts-sidebar-nav__buttons{
        grid-template-columns:1fr;
    }

    .posts-sidebar-nav button[data-post-filter="all"]{
        grid-column:auto;
    }
}


/* v98: na mobile sidebar staje się tylko kompaktowym filtrem; posty są główną treścią */
.posts-mobile-filter-select-wrap{display:none;}

@media (max-width: 700px){
    .posts-directory__layout{
        display:flex !important;
        flex-direction:column;
        gap:18px !important;
    }

    .posts-sidebar,
    .posts-sidebar__panel{
        display:contents !important;
    }

    .posts-sidebar-nav{
        order:0;
        width:100%;
        padding:14px 16px !important;
        border-radius:18px !important;
        display:grid;
        grid-template-columns:minmax(0,1fr) minmax(170px, .9fr);
        align-items:center;
        gap:6px 14px;
        box-shadow:0 8px 22px rgba(81,36,59,.05) !important;
    }

    .posts-sidebar-nav > span{
        grid-column:1;
        margin:0;
        font-size:8.5px !important;
    }

    .posts-sidebar-nav h2{
        grid-column:1;
        margin:0 !important;
        font-size:24px !important;
        line-height:1.04 !important;
    }

    .posts-mobile-filter-select-wrap{
        grid-column:2;
        grid-row:1 / span 2;
        display:block;
        min-width:0;
    }

    .posts-mobile-filter-select{
        width:100%;
        min-height:44px;
        padding:9px 38px 9px 13px;
        border:1px solid rgba(109,43,76,.16);
        border-radius:14px;
        background-color:#fff;
        color:var(--green-800);
        font:inherit;
        font-size:12px;
        font-weight:800;
        line-height:1.2;
        cursor:pointer;
    }

    .posts-sidebar-nav__buttons{
        display:none !important;
    }

    .posts-feed{
        order:1;
        width:100%;
        gap:16px !important;
    }

    .posts-topic-card{
        order:2;
        margin-top:8px;
    }

    .posts-offer-card{order:3;}
    .posts-social-card{order:4;}

    .posts-topic-card,
    .posts-offer-card,
    .posts-social-card{
        width:100%;
    }

    .posts-topic-card,
    .posts-offer-card{
        padding:17px !important;
        border-radius:18px !important;
    }

    .posts-topic-card h2,
    .posts-offer-card h2{
        font-size:24px !important;
        margin-bottom:8px !important;
    }

    .posts-topic-card p,
    .posts-offer-card p{
        font-size:13px !important;
        line-height:1.5 !important;
        margin-bottom:12px !important;
    }

    .posts-topic-card .button,
    .posts-offer-card .button{
        min-height:46px !important;
        border-radius:14px !important;
        font-size:13.5px !important;
        box-shadow:none !important;
    }

    .posts-social-card{
        padding:15px 17px !important;
        border-radius:18px !important;
        grid-template-columns:auto 1fr !important;
        align-items:center;
    }

    .posts-social-card h2,
    .posts-social-card > h2{
        margin:0 !important;
        font-size:22px !important;
    }

    .posts-social-card__icons{
        justify-content:flex-end !important;
    }
}

@media (max-width: 430px){
    .posts-sidebar-nav{
        grid-template-columns:minmax(0,.72fr) minmax(160px,1.28fr);
        gap:5px 10px;
        padding:13px 14px !important;
    }

    .posts-sidebar-nav h2{font-size:22px !important;}
    .posts-mobile-filter-select{font-size:11.5px;padding-left:11px;}
}


/* v99: dodatkowe elementy strony Posty jako zwijany panel na telefonie */
.posts-mobile-extras{display:contents;}
.posts-mobile-extras > summary{display:none;}
.posts-mobile-extras__content{display:contents;}

@media (max-width:700px){
    .posts-sidebar-nav{order:0;}

    .posts-mobile-extras{
        order:1;
        width:100%;
        display:block;
        margin:0;
        border:1px solid rgba(109,43,76,.12);
        border-radius:18px;
        background:rgba(255,255,255,.96);
        box-shadow:0 8px 22px rgba(81,36,59,.05);
        overflow:hidden;
    }

    .posts-mobile-extras > summary{
        min-height:52px;
        padding:10px 14px 10px 16px;
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:12px;
        list-style:none;
        cursor:pointer;
        -webkit-tap-highlight-color:transparent;
    }

    .posts-mobile-extras > summary::-webkit-details-marker{display:none;}

    .posts-mobile-extras > summary > span{
        min-width:0;
        display:grid;
        gap:2px;
    }

    .posts-mobile-extras > summary strong{
        color:var(--ink);
        font-size:14px;
        font-weight:850;
        line-height:1.15;
    }

    .posts-mobile-extras > summary small{
        overflow:hidden;
        color:var(--muted);
        font-size:10px;
        font-weight:650;
        line-height:1.25;
        text-overflow:ellipsis;
        white-space:nowrap;
    }

    .posts-mobile-extras > summary svg{
        width:18px;
        height:18px;
        flex:0 0 18px;
        fill:none;
        stroke:var(--green-700);
        stroke-width:1.9;
        stroke-linecap:round;
        stroke-linejoin:round;
        transition:transform .2s ease;
    }

    .posts-mobile-extras[open] > summary svg{transform:rotate(180deg);}

    .posts-mobile-extras[open] > summary{
        border-bottom:1px solid var(--line);
    }

    .posts-mobile-extras__content{
        padding:12px;
        display:grid;
        gap:12px;
        background:linear-gradient(180deg, rgba(250,244,247,.28), rgba(255,255,255,.98));
    }

    .posts-mobile-extras .posts-topic-card,
    .posts-mobile-extras .posts-offer-card,
    .posts-mobile-extras .posts-social-card{
        order:initial !important;
        width:100%;
        margin:0 !important;
        box-shadow:none !important;
    }

    .posts-mobile-extras .posts-topic-card,
    .posts-mobile-extras .posts-offer-card{
        padding:15px !important;
        border-radius:15px !important;
    }

    .posts-mobile-extras .posts-topic-card h2,
    .posts-mobile-extras .posts-offer-card h2{
        font-size:22px !important;
    }

    .posts-mobile-extras .posts-topic-card p,
    .posts-mobile-extras .posts-offer-card p{
        font-size:12.5px !important;
        line-height:1.48 !important;
    }

    .posts-mobile-extras .posts-topic-card .button,
    .posts-mobile-extras .posts-offer-card .button{
        min-height:44px !important;
        font-size:13px !important;
    }

    .posts-mobile-extras .posts-social-card{
        min-height:58px;
        padding:12px 14px !important;
        border-radius:15px !important;
    }

    .posts-mobile-extras .posts-social-card h2,
    .posts-mobile-extras .posts-social-card > h2{
        font-size:20px !important;
    }

    .posts-mobile-extras .posts-social-card__icons .social-icon-link{
        width:38px;
        height:38px;
    }

    .posts-feed{
        order:2;
    }
}


/* v100: jeden mobilny panel Postów w headerze, po lewej od dzwonka */
.posts-mobile-panel{display:contents;}
.posts-mobile-panel > summary{display:none;}
.posts-mobile-panel__content{display:contents;}
.posts-mobile-panel__extras{display:contents;}

@media (max-width: 700px){
    .posts-sidebar.is-mobile-detached{display:none !important;}
    .posts-directory{padding:16px 0 56px;}
    .posts-directory__layout{gap:18px;}

    .posts-mobile-panel{
        display:block;
        width:auto;
        flex:0 0 auto;
        position:relative;
        overflow:visible;
    }

    .posts-mobile-panel > summary{
        min-height:42px;
        padding:9px 14px 9px 16px;
        border:1px solid rgba(109,43,76,.15);
        border-radius:999px;
        display:inline-flex;
        align-items:center;
        gap:8px;
        background:rgba(250,244,247,.96);
        color:var(--green-800);
        box-shadow:0 6px 16px rgba(81,36,59,.06);
        list-style:none;
        cursor:pointer;
        user-select:none;
        -webkit-tap-highlight-color:transparent;
    }

    .posts-mobile-panel > summary::-webkit-details-marker{display:none;}
    .posts-mobile-panel > summary > span{
        font-size:12.5px;
        font-weight:850;
        line-height:1;
    }
    .posts-mobile-panel > summary svg{
        width:16px;
        height:16px;
        fill:none;
        stroke:currentColor;
        stroke-width:1.8;
        stroke-linecap:round;
        stroke-linejoin:round;
        transition:transform .2s ease;
    }
    .posts-mobile-panel[open] > summary svg{transform:rotate(180deg);}

    .posts-mobile-panel__content{
        position:fixed;
        z-index:145;
        top:calc(var(--runtime-header-height, var(--header-height)) + 8px);
        left:14px;
        right:14px;
        width:auto;
        max-height:calc(100dvh - var(--runtime-header-height, var(--header-height)) - 22px);
        padding:12px;
        display:none;
        overflow:auto;
        border:1px solid rgba(230,223,227,.96);
        border-radius:22px;
        background:rgba(255,255,255,.985);
        box-shadow:0 20px 42px rgba(81,36,59,.14);
        backdrop-filter:blur(16px);
        -webkit-backdrop-filter:blur(16px);
    }
    .posts-mobile-panel[open] > .posts-mobile-panel__content{display:grid;gap:12px;}

    .posts-mobile-panel .posts-sidebar-nav,
    .posts-mobile-panel .posts-topic-card,
    .posts-mobile-panel .posts-offer-card,
    .posts-mobile-panel .posts-social-card{
        padding:16px;
        border-radius:18px;
        box-shadow:none;
    }

    .posts-mobile-panel .posts-sidebar-nav h2,
    .posts-mobile-panel .posts-topic-card h2,
    .posts-mobile-panel .posts-offer-card h2,
    .posts-mobile-panel .posts-social-card h2,
    .posts-mobile-panel .posts-social-card > h2{
        margin:4px 0 10px;
        font-size:clamp(24px, 7vw, 30px);
        line-height:1.08;
    }

    .posts-mobile-panel .posts-sidebar-nav__buttons{display:none !important;}
    .posts-mobile-panel .posts-mobile-filter-select-wrap{display:block !important;}
    .posts-mobile-panel .posts-mobile-filter-select{
        width:100%;
        min-height:48px;
        padding:0 48px 0 16px;
        border:1px solid rgba(109,43,76,.14);
        border-radius:999px;
        background:#fff;
        color:var(--ink);
        font-size:14px;
        font-weight:800;
        appearance:none;
        -webkit-appearance:none;
        background-image:linear-gradient(45deg, transparent 50%, var(--green-700) 50%), linear-gradient(135deg, var(--green-700) 50%, transparent 50%);
        background-position:calc(100% - 24px) calc(50% - 3px), calc(100% - 16px) calc(50% - 3px);
        background-size:8px 8px, 8px 8px;
        background-repeat:no-repeat;
    }

    .posts-mobile-panel__extras{display:grid;gap:12px;}
    .posts-mobile-panel .posts-topic-card p,
    .posts-mobile-panel .posts-offer-card p{
        margin:0 0 12px;
        font-size:13.5px;
        line-height:1.58;
    }
    .posts-mobile-panel .posts-topic-card .button,
    .posts-mobile-panel .posts-offer-card .button{
        min-height:48px;
        border-radius:15px;
        font-size:14px;
        box-shadow:0 10px 24px rgba(109,43,76,.1);
    }
    .posts-mobile-panel .posts-social-card{
        display:grid;
        gap:10px;
        justify-content:flex-start;
    }
    .posts-mobile-panel .posts-social-card__icons{
        justify-content:flex-start;
        flex-wrap:wrap;
        gap:10px;
    }
    .posts-mobile-panel .posts-social-card__icons .social-icon-link{
        width:40px;
        height:40px;
    }
}


/* v103: nowy konfigurator tylko na telefonie; desktop przywrócony do klasycznego układu 3 kart */
.offer-desktop-only{display:block;}
.offer-mobile-only{display:none;}

@media (min-width:701px){
    .offer-desktop-shell .offer-configurator{
        max-width:760px;
        margin:-15px auto 52px;
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:35px;
    }
    .offer-desktop-shell .offer-choice{
        min-width:0;
        margin:0;
        padding:0;
        border:0;
        text-align:center;
    }
    .offer-desktop-shell .offer-choice legend{
        width:100%;
        margin-bottom:11px;
        color:var(--ink);
        font-size:12px;
        font-weight:750;
    }
    .offer-desktop-shell .offer-segmented{
        padding:4px;
        display:grid;
        grid-template-columns:repeat(2,minmax(0,1fr));
        gap:4px;
        border:1px solid var(--line);
        border-radius:999px;
        background:var(--white);
        box-shadow:none;
    }
    .offer-desktop-shell .offer-segmented--duration{
        grid-template-columns:repeat(4,minmax(0,1fr));
    }
    .offer-desktop-shell .offer-segmented button{
        min-height:39px;
        padding:8px 13px;
        border:1px solid transparent;
        border-radius:999px;
        background:transparent;
        color:var(--text);
        font-size:12px;
        font-weight:700;
        white-space:nowrap;
        box-shadow:none;
    }
    .offer-desktop-shell .offer-segmented button.is-active{
        border-color:var(--green-600);
        background:var(--green-50);
        color:var(--green-800);
        box-shadow:0 5px 14px rgba(81,36,59,.12);
    }
    .offer-desktop-shell .pricing-grid{
        max-width:none;
        margin:0;
        display:grid;
        grid-template-columns:repeat(3,minmax(0,1fr));
        align-items:stretch;
        gap:22px;
    }
    .offer-desktop-shell .price-card{
        position:relative;
        min-height:0;
        padding:36px 31px 30px;
        display:flex !important;
        flex-direction:column;
        border:1px solid var(--line);
        border-radius:var(--radius-md);
        background:linear-gradient(180deg,var(--green-50),var(--white) 38%);
        box-shadow:none;
        transform:none;
    }
    .offer-desktop-shell .price-card:hover{
        transform:translateY(-5px);
        box-shadow:var(--shadow-md);
    }
    .offer-desktop-shell .price-card--featured{
        padding-top:50px;
        border:2px solid var(--green-600);
        box-shadow:var(--shadow-md);
    }
    .offer-desktop-shell .popular-badge{
        position:absolute;
        top:0;
        left:50%;
        padding:7px 14px;
        border-radius:0 0 12px 12px;
        background:var(--green-700);
        color:var(--white);
        font-size:9px;
        font-weight:900;
        letter-spacing:.09em;
        text-transform:uppercase;
        transform:translateX(-50%);
        white-space:nowrap;
    }
    .offer-desktop-shell .price-card h3{
        margin:14px 0 16px;
        color:var(--ink);
        font-family:Georgia,"Times New Roman",serif;
        font-size:31px;
        font-weight:600;
        line-height:1.2;
    }
    .offer-desktop-shell .price-card--featured h3{margin-top:18px;}
    .offer-desktop-shell .price{
        margin:0 0 2px;
        display:flex;
        align-items:baseline;
        flex-wrap:wrap;
        gap:8px;
    }
    .offer-desktop-shell .price strong{font-size:40px;}
    .offer-desktop-shell .price-equivalent{
        min-height:18px;
        margin:0 0 18px;
        color:var(--green-700);
        font-size:11px;
        font-weight:800;
    }
    .offer-desktop-shell .price-equivalent[hidden]{
        display:block;
        visibility:hidden;
    }
    .offer-desktop-shell .price-intro{
        min-height:68px;
        margin-bottom:23px;
        color:var(--muted);
        font-size:13px;
    }
    .offer-desktop-shell .price-card ul{
        margin:0 0 28px;
        padding:22px 0 0;
        display:grid;
        gap:12px;
        border-top:1px solid var(--line);
        list-style:none;
    }
    .offer-desktop-shell .price-card li{
        position:relative;
        padding-left:24px;
        color:#4d474d;
        font-size:13px;
    }
    .offer-desktop-shell .price-card li::before{
        content:"✓";
        position:absolute;
        top:0;
        left:0;
        color:var(--green-600);
        font-weight:900;
    }
    .offer-desktop-shell .price-card .button{margin-top:auto;}
}

@media (max-width:700px){
    .offer-desktop-only{display:none !important;}
    .offer-mobile-only{display:block !important;}
}

/* v105: stacjonarny konfigurator panelowy tylko na telefonie; desktop ma klasyczne 3 karty */
.stationary-desktop-only{display:grid;}
.stationary-mobile-only{display:none !important;}
@media (min-width:701px){
    .stationary-desktop-only{
        display:grid !important;
        grid-template-columns:repeat(3,minmax(0,1fr));
        align-items:stretch;
        gap:22px;
        margin-top:28px;
    }
    .stationary-desktop-only .price-card{
        display:flex !important;
        flex-direction:column;
        padding:30px 28px 26px;
        background:linear-gradient(180deg, rgba(250,244,247,.88), #fff 42%);
    }
    .stationary-desktop-only .price-card h3{margin-bottom:12px;font-size:clamp(23px,2.3vw,29px);}
    .stationary-desktop-only .price-card .price{margin-bottom:14px;}
    .stationary-desktop-only .price-card .price-intro{margin-bottom:0;color:#58525a;line-height:1.62;}
    .stationary-desktop-only .price-card ul{flex:1;margin-bottom:16px;padding-top:16px;gap:9px;}
    .stationary-desktop-only .price-card li{font-size:12.5px;line-height:1.48;}
    .stationary-desktop-only .stationary-card__note{margin:0 0 18px;}
    .stationary-desktop-only .button{margin-top:auto;}
}
@media (max-width:700px){
    .stationary-desktop-only{display:none !important;}
    .stationary-mobile-only{display:block !important;}
}

/* v107: ukryj pływający przycisk czatu/kontaktu na telefonie */
@media (max-width: 700px){
    .floating-contact{display:none !important;}
}




/* v111 performance: lekki mobile bez ciężkich filtrów i bez zbędnych animacji */
@media (max-width:700px){
    .site-header,
    .primary-nav,
    .panel-notifications__menu,
    .posts-mobile-panel__content,
    .dashboard-mobile-switcher__menu{
        backdrop-filter:none !important;
        -webkit-backdrop-filter:none !important;
    }

    .reveal,
    .reveal--delay,
    .reveal--delay-2{
        opacity:1 !important;
        transform:none !important;
        transition:none !important;
        transition-delay:0s !important;
    }

    .reassurance,
    .reassurance::after,
    .reassurance__icon{
        animation:none !important;
    }

    .site-header{
        background:rgba(255,255,255,.985) !important;
    }

    .primary-nav{
        position:fixed !important;
        top:var(--mobile-nav-top, 80px) !important;
        right:12px !important;
        bottom:auto !important;
        left:auto !important;
        inset:auto !important;
        width:min(300px, calc(100vw - 24px)) !important;
        max-height:calc(100dvh - var(--mobile-nav-top, 80px) - 12px) !important;
        margin:0 !important;
        padding:12px 14px 14px !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:0 !important;
        overflow-x:hidden !important;
        overflow-y:auto !important;
        overscroll-behavior:contain;
        -webkit-overflow-scrolling:touch;
        border:1px solid rgba(109,43,76,.13) !important;
        border-radius:20px !important;
        background:#fff !important;
        box-shadow:0 16px 36px rgba(42,20,33,.14) !important;
        visibility:hidden !important;
        opacity:0 !important;
        pointer-events:none !important;
        transform:translateY(-5px) !important;
        transition:opacity .12s ease, transform .14s ease, visibility .12s ease !important;
        z-index:2147483000 !important;
    }

    .primary-nav.is-open{
        visibility:visible !important;
        opacity:1 !important;
        pointer-events:auto !important;
        transform:translateY(0) !important;
    }

    .primary-nav > a{
        width:100% !important;
        min-height:44px !important;
        padding:11px 4px !important;
        display:flex !important;
        align-items:center !important;
        border-bottom:1px solid rgba(109,43,76,.10) !important;
        color:#37333a !important;
        font-size:14px !important;
        font-weight:760 !important;
        line-height:1.2 !important;
        text-align:left !important;
    }
    .primary-nav > a:last-of-type{border-bottom:0 !important;}

    .primary-nav__account-mobile{
        width:100% !important;
        margin:10px 0 0 !important;
        padding:12px 0 0 !important;
        display:grid !important;
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:9px !important;
        border-top:1px solid rgba(109,43,76,.12) !important;
    }
    .primary-nav__account-mobile a{
        width:100% !important;
        min-height:46px !important;
        padding:10px 12px !important;
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        border-radius:15px !important;
        box-sizing:border-box !important;
        font-size:13px !important;
        font-weight:820 !important;
        line-height:1 !important;
        white-space:nowrap !important;
    }

    body.menu-open .posts-mobile-panel{pointer-events:none;}
}

@media (max-width:390px){
    .primary-nav{
        right:8px !important;
        width:min(292px, calc(100vw - 16px)) !important;
    }
}


/* v112: naprawa pozycji mobilnego draweru po optymalizacji v111.
   Ważne: shorthand `inset` musi być przed `top/right`, inaczej zerował ich wartości. */
@media (max-width:700px){
    .primary-nav{
        inset:auto !important;
        top:var(--mobile-nav-top, 80px) !important;
        right:12px !important;
        bottom:auto !important;
        left:auto !important;
        visibility:hidden !important;
        opacity:0 !important;
        pointer-events:none !important;
        transform:translateY(-5px) !important;
        z-index:2147483000 !important;
    }
    .primary-nav.is-open{
        visibility:visible !important;
        opacity:1 !important;
        pointer-events:auto !important;
        transform:translateY(0) !important;
    }
}
@media (max-width:390px){
    .primary-nav{
        inset:auto !important;
        top:var(--mobile-nav-top, 80px) !important;
        right:8px !important;
        bottom:auto !important;
        left:auto !important;
    }
}


/* v113: powiadomienia zawsze jako dynamiczny overlay, nigdy statyczny blok */
.panel-notifications__menu[hidden]{
    display:none !important;
}
.panel-notifications__menu:not([hidden]){
    display:block !important;
}

@media (max-width:700px){
    .panel-notifications{
        position:relative !important;
    }
    .panel-notifications__menu{
        position:fixed !important;
        z-index:2147483100 !important;
        top:var(--notifications-panel-top, calc(var(--runtime-header-height, var(--header-height)) + 8px)) !important;
        right:10px !important;
        left:auto !important;
        bottom:auto !important;
        width:min(340px, calc(100vw - 20px)) !important;
        max-height:calc(100dvh - var(--notifications-panel-top, 80px) - 10px) !important;
        margin:0 !important;
        overflow:hidden !important;
        border:1px solid rgba(109,43,76,.14) !important;
        border-radius:20px !important;
        background:#fff !important;
        box-shadow:0 18px 44px rgba(42,20,33,.16) !important;
        transform:none !important;
    }
    .panel-notifications__list{
        max-height:calc(100dvh - var(--notifications-panel-top, 80px) - 118px) !important;
        overflow-y:auto !important;
        overscroll-behavior:contain;
        -webkit-overflow-scrolling:touch;
    }
}

@media (max-width:390px){
    .panel-notifications__menu{
        right:8px !important;
        width:min(326px, calc(100vw - 16px)) !important;
    }
}


/* v114: otwarte menu/powiadomienia nie blokują scrollowania strony */
@media (max-width:700px){
    body.menu-open{
        overflow:auto !important;
        touch-action:auto !important;
    }
}


/* v117: zablokowany Chat nie nawiguje do Kontakt — zachowuje się jak faktycznie zablokowana pozycja */
[data-chat-locked-control][aria-disabled="true"]{
    cursor:not-allowed;
}
@media (hover:none), (pointer:coarse){
    [data-chat-locked-control][aria-disabled="true"]{
        -webkit-tap-highlight-color:transparent;
    }
}


/* v121: Posty desktop i mobile są rozdzielone — mobile wrapper nie może już psuć desktopowego sidebara. */
@media (min-width:701px){
    .posts-mobile-panel{display:none !important;}
    .posts-sidebar-nav--desktop,
    .posts-topic-card--desktop,
    .posts-offer-card--desktop,
    .posts-social-card--desktop{display:flex;}
    .posts-sidebar-nav--desktop{display:block;}

    .posts-sidebar__panel{
        display:grid !important;
        grid-template-rows:auto minmax(0,1fr) minmax(0,1fr) auto !important;
        align-content:stretch !important;
        height:100% !important;
    }
}

@media (max-width:700px){
    .posts-sidebar-nav--desktop,
    .posts-topic-card--desktop,
    .posts-offer-card--desktop,
    .posts-social-card--desktop{display:none !important;}
}

/* v127: kod zniżkowy w checkoutcie */
.checkout-promo{margin-top:22px;padding:17px;border:1px solid rgba(109,43,76,.16);border-radius:18px;background:linear-gradient(180deg,rgba(250,246,248,.94),rgba(255,255,255,.98));display:grid;gap:12px;}
.checkout-promo__copy{display:grid;gap:3px;}
.checkout-promo__copy strong{color:var(--ink);font-size:13px;}
.checkout-promo__copy span{color:var(--muted);font-size:10.5px;line-height:1.45;}
.checkout-promo__control{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:9px;align-items:center;}
.checkout-promo__control input{width:100%;min-height:48px;padding:11px 14px;border:1px solid var(--line);border-radius:14px;background:#fff;color:var(--ink);font-weight:800;letter-spacing:.04em;text-transform:uppercase;outline:none;}
.checkout-promo__control input:focus{border-color:var(--green-600);box-shadow:0 0 0 4px rgba(138,66,100,.09);}
.checkout-promo__control input[readonly]{background:#f6f2f4;color:#696168;}
.checkout-promo__control .button{min-height:48px;padding-inline:18px;}
.checkout-promo__status{min-height:16px;color:var(--muted);font-size:10.5px;font-weight:700;line-height:1.4;}
.checkout-promo__status.is-success{color:var(--success);}
.checkout-promo__status.is-error{color:#a53d32;}
.checkout-order-card__promo{padding:13px 0;display:grid;grid-template-columns:1fr auto;gap:3px 12px;border-top:1px solid var(--line);}
.checkout-order-card__promo>span{color:var(--muted);font-size:10px;}
.checkout-order-card__promo>strong{color:var(--green-700);font-size:12px;text-align:right;}
.checkout-order-card__promo>small{grid-column:1/-1;color:var(--success);font-size:9.5px;font-weight:750;text-align:right;}
.checkout-order-card__promo[hidden]{display:none!important;}
@media (max-width:940px) and (min-width:701px){.checkout-order-card__promo{grid-column:2;grid-row:4;}.checkout-order-card__mode{grid-row:5;}}
@media (max-width:700px){.checkout-promo{padding:15px;border-radius:16px;}.checkout-promo__control{grid-template-columns:1fr;}.checkout-promo__control .button{width:100%;}.checkout-order-card__promo>small{text-align:left;}}


/* v160: większe hero wyłącznie na dużym desktopie */
@media (min-width:1280px){
    .hero > .container.hero-grid{
        width:min(calc(100% - 64px),1440px);
        max-width:1440px;
        grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);
        column-gap:82px;
    }

    .hero h1{
        max-width:790px;
        margin-bottom:27px;
        font-size:clamp(56px,3.65vw,68px);
        line-height:.99;
    }

    .hero-lead{
        max-width:660px;
        margin-bottom:27px;
        font-size:19px;
        line-height:1.68;
    }

    .hero .check-list{
        margin-bottom:32px;
        gap:12px;
    }

    .hero .check-list li{
        font-size:15.5px;
    }

    .hero-actions{
        gap:15px;
    }

    .hero-actions .button{
        min-height:56px;
        padding-right:27px;
        padding-left:27px;
    }

    .hero-visual{
        margin-top:-20px;
    }

    .hero-photo{
        min-height:min(690px,calc(100svh - var(--header-height) - 118px));
        height:min(690px,calc(100svh - var(--header-height) - 118px));
        border-radius:30px 30px 0 0;
    }

    .hero-motto{
        right:39px;
        bottom:32px;
        left:61px;
        max-width:470px;
        font-size:27px;
    }

    .home-social{
        padding:17px 20px;
        border-radius:0 0 20px 20px;
    }

    .home-social__eyebrow{
        font-size:10.5px;
    }

    .home-social__icons .social-icon-link{
        width:40px;
        height:40px;
    }
}

/* Na bardzo szerokich monitorach hero może wykorzystać trochę więcej przestrzeni,
   ale nie ruszamy pozostałych sekcji ani nagłówka strony. */
@media (min-width:1680px){
    .hero > .container.hero-grid{
        width:min(calc(100% - 80px),1480px);
        max-width:1480px;
        column-gap:90px;
    }

    .hero h1{
        max-width:820px;
        font-size:70px;
    }

    .hero-lead{
        max-width:680px;
        font-size:19.5px;
    }

    .hero-photo{
        min-height:min(710px,calc(100svh - var(--header-height) - 112px));
        height:min(710px,calc(100svh - var(--header-height) - 112px));
    }
}

/* v167: porzadki w sekcji oferty — naturalna wysokosc, rowne karty, bez dublowania badge */
@media (min-width:941px){
    /* Oferta ma więcej treści niż jeden viewport. Nie przycinamy jej do wysokości ekranu. */
    .offer.section{
        height:auto !important;
        min-height:calc(100svh - var(--header-height));
        padding-top:56px;
        padding-bottom:56px;
        overflow:visible !important;
    }

    .offer.section > .container{
        display:block;
    }

    /* Więcej oddechu między nagłówkiem, konfiguratorem i kartami. */
    .offer .section-heading--center{
        margin-bottom:32px;
    }

    .offer-desktop-shell .offer-configurator{
        margin:0 auto 34px;
    }

    /* Wszystkie trzy karty zaczynają treść na tej samej wysokości. */
    .offer-desktop-shell .price-card,
    .offer-desktop-shell .price-card--featured{
        padding:42px 31px 30px;
    }

    .offer-desktop-shell .price-card h3,
    .offer-desktop-shell .price-card--featured h3{
        margin:8px 0 16px;
    }

    .offer-desktop-shell .price-intro{
        min-height:70px;
    }

    .offer .offer-stationary-link--below{
        margin-top:24px;
    }

    .offer .reassurance{
        margin-top:20px;
    }
}

@media (min-width:701px) and (max-width:940px){
    /* Tablet również nie może obcinać końcówki oferty. */
    .offer.section{
        height:auto !important;
        min-height:0 !important;
        overflow:visible !important;
    }
}

@media (max-width:700px){
    /* Rekomendację pokazujemy tylko przy wyborze pakietu, nie drugi raz na karcie szczegółów. */
    .offer-package-detail .popular-badge{
        display:none !important;
    }
    .offer-package-detail .price-card--featured{
        padding-top:22px;
    }
}


/* v168: uproszczona oferta i jeden, spójny znak wyboru */
.offer .price-card li::before{
    content:none !important;
}
.offer .price-card li:not(.offer-feature-heading)::before{
    content:"" !important;
    position:absolute;
    top:2px;
    left:3px;
    width:6px;
    height:10px;
    border:solid var(--green-600);
    border-width:0 2px 2px 0;
    transform:rotate(45deg);
}
.offer .price-card li.offer-feature-heading{
    padding-left:0;
    color:var(--ink);
}

@media (min-width:941px){
    .offer-desktop-shell .price-intro{
        min-height:61px;
        margin-bottom:20px;
        line-height:1.55;
    }
    .offer-desktop-shell .price-card ul{
        padding-top:19px;
        gap:10px;
    }
    .offer-desktop-shell .price-card li{
        line-height:1.42;
    }
    .offer-desktop-shell .price-card li.offer-feature-heading{
        margin-top:8px;
        padding-top:12px;
        padding-bottom:3px;
        font-size:14px;
    }
    .offer-desktop-shell .price-card li.offer-feature-heading:first-child{
        margin-top:0;
        padding-top:0;
    }
}

@media (max-width:700px){
    .offer-panel .offer-choice legend{
        line-height:1.3;
    }
    .offer-package-detail .price-intro{
        line-height:1.55;
    }
    .offer-package-detail .price-card__features ul{
        gap:10px;
    }
}

/* v168.1: komunikacja oferty — szybkie porównanie bez marketingowego szumu */
.offer .offer-section-lead{
    max-width:760px;
    margin:12px auto 0;
    color:var(--muted);
    font-size:14px;
    line-height:1.6;
    text-align:center;
}
@media (min-width:941px){
    .offer .section-heading--center{
        margin-bottom:28px;
    }
    .offer-desktop-shell .offer-configurator{
        margin-bottom:30px;
    }
}

/* ===== 22-post-editorial.css ===== */
/* Redakcyjny wariant artykułu: szeroka kolumna, naturalne zdjęcia i sekcje tekst + zdjęcie. */
.article-page--editorial .article-header__inner,
.article-page--editorial .article-layout--single .article-main-column,
.article-page--editorial .article-layout--single .article-content{max-width:1120px;margin-right:auto;margin-left:auto;}
.article-page--editorial .article-layout{padding-top:42px;}
.article-page--editorial .article-header__inner > p{max-width:980px;margin:0 0 30px;color:#5f5960;font-size:clamp(20px,2vw,24px);line-height:1.58;}
.article-page--editorial .post-summary-blocks > .post-block--paragraph{max-width:1020px;margin-top:0;margin-bottom:24px;color:#413b41;font-size:clamp(21px,1.9vw,24px);line-height:1.78;}
.article-page--editorial .article-content > .post-block--paragraph,
.article-page--editorial .article-content > .post-block--list,
.article-page--editorial .article-content > .post-block--quote{max-width:1120px;color:#322f32;font-size:clamp(20px,1.7vw,23px);line-height:1.8;}
.article-page--editorial .article-content > .post-block--heading{max-width:1120px;margin-top:58px;margin-bottom:20px;font-size:clamp(34px,3vw,40px);line-height:1.13;}
.article-page--editorial .article-content > .post-block--subheading{max-width:1120px;font-size:clamp(26px,2.2vw,30px);line-height:1.22;}
.article-page--editorial .article-content .post-block-media{border:0;border-radius:0;background:transparent;box-shadow:none;}
.article-page--editorial .article-content .post-block-width--normal{width:min(100%,760px);}
.article-page--editorial .article-content .post-block-width--wide{width:min(100%,1120px);}
.article-page--editorial .article-content .post-block-width--full{width:100%;}
.article-page--editorial .post-summary-blocks > .post-block-media.post-block-width--normal{width:min(calc(100% - 48px), 760px);margin-right:auto;margin-left:auto;border-radius:18px;}
.article-page--editorial .post-summary-blocks > .post-block-media.post-block-width--wide{width:min(calc(100% - 48px), 980px);margin-right:auto;margin-left:auto;border-radius:18px;}
.article-page--editorial .post-summary-blocks > .post-block-media.post-block-width--normal{width:min(calc(100% - 48px), 860px);}
.article-page--editorial .post-summary-blocks > .post-block-media.post-block-width--wide{width:min(calc(100% - 48px), 1020px);}
.article-page--editorial .post-media img{height:auto;aspect-ratio:auto;object-fit:contain;background:transparent;}
.article-page--editorial .post-media--card{overflow:hidden;border-radius:16px !important;box-shadow:0 10px 28px rgba(45,35,40,.08) !important;}
.article-page--editorial .post-media--plain{overflow:visible;border-radius:0 !important;box-shadow:none !important;}
.article-page--editorial .post-media--aspect-16-9 img{aspect-ratio:16/9;object-fit:cover;}
.article-page--editorial .post-media--aspect-4-3 img{aspect-ratio:4/3;object-fit:cover;}
.article-page--editorial .post-media--aspect-3-2 img{aspect-ratio:3/2;object-fit:cover;}
.article-page--editorial .post-media--aspect-1-1 img{aspect-ratio:1/1;object-fit:cover;}
.article-page--editorial .post-media--aspect-auto img{aspect-ratio:auto;object-fit:contain;}
.article-page--editorial .post-media figcaption{padding:8px 0 0;background:transparent;color:var(--muted);font-size:11px;line-height:1.45;}
.post-editorial-section{width:100%;margin:54px 0;display:block;max-width:1120px;overflow:hidden;}
.post-editorial-section--equal,
.post-editorial-section--media-wide{display:block;}
.post-editorial-section--text-only{display:block;max-width:1120px;}
.post-editorial-section__copy{display:block;}
.post-editorial-section__copy h2{margin:0 0 16px;color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:clamp(30px,3vw,38px);line-height:1.15;}
.post-editorial-section__copy p{margin:0;color:#1f1b1d;font-family:Georgia,"Times New Roman",serif;font-size:clamp(20px,1.65vw,23px);line-height:1.8;}
.post-editorial-section__copy p + p{margin-top:18px;}
.post-editorial-section__media{margin:6px 0 14px;min-width:0;width:min(42%,420px);}
.post-editorial-section--media-right .post-editorial-section__media{float:right;margin:10px 0 18px 34px;}
.post-editorial-section--media-left .post-editorial-section__media{float:left;margin:10px 34px 18px 0;}
.post-editorial-section__media img{width:100%;aspect-ratio:4/3;height:auto;display:block;object-fit:cover;background:#f4f2f3;border-radius:10px;}
.post-editorial-section__media figcaption{padding-top:8px;color:var(--muted);font-size:11px;line-height:1.45;}
.post-editorial-section::after{content:"";display:block;clear:both;}
@media (max-width:760px){
  .article-page--editorial .article-layout{padding-top:28px;}
  .post-editorial-section,
  .post-editorial-section--equal,
  .post-editorial-section--media-wide{margin:34px 0;display:block;}
  .post-editorial-section__media,
  .post-editorial-section--media-left .post-editorial-section__media,
  .post-editorial-section--media-right .post-editorial-section__media{float:none;width:100%;max-width:none;margin:0 0 18px;}
  .article-page--editorial .article-header__inner > p{font-size:19px;line-height:1.6;}
  .article-page--editorial .post-summary-blocks > .post-block--paragraph{font-size:19px;line-height:1.74;}
  .article-page--editorial .post-summary-blocks > .post-block-media.post-block-width--normal,
  .article-page--editorial .post-summary-blocks > .post-block-media.post-block-width--wide{width:calc(100% - 24px);}
  .article-page--editorial .post-summary-blocks .post-media--aspect-16-9 img,
  .article-page--editorial .post-summary-blocks .post-media--aspect-3-2 img,
  .article-page--editorial .post-summary-blocks .post-media--aspect-auto img{aspect-ratio:1.9/1;}
  .article-page--editorial .post-summary-blocks > .post-block--paragraph,
  .article-page--editorial .article-content > .post-block--paragraph,
  .article-page--editorial .article-content > .post-block--list,
  .article-page--editorial .article-content > .post-block--quote{font-size:18px;line-height:1.74;}
  .post-editorial-section__copy h2{font-size:30px;}
  .post-editorial-section__copy p{font-size:18px;line-height:1.74;}
}

.posts-sidebar--left .posts-sidebar-nav--desktop{display:none;}
.posts-sidebar--right .posts-topic-card--desktop,.posts-sidebar--right .posts-offer-card--desktop,.posts-sidebar--right .posts-social-card--desktop,.posts-sidebar--right .posts-mobile-panel{display:none;}


/* v182: lewy sidebar bez rozciągania sekcji Media */
.posts-sidebar--left{height:auto !important;min-height:0 !important;max-height:none !important;}
.posts-sidebar--left .posts-sidebar__panel{height:auto !important;display:block !important;overflow:visible !important;}
.posts-sidebar--left .posts-topic-card,
.posts-sidebar--left .posts-offer-card,
.posts-sidebar--left .posts-social-card{min-height:0 !important;}
.posts-sidebar--left .posts-social-card{padding-top:14px !important;padding-bottom:14px !important;}


/* v183: lewy sidebar bardziej kartowy + dodatkowy blok zapychający miejsce */
.posts-sidebar--left .posts-sidebar__panel{border:0 !important;background:transparent !important;box-shadow:none !important;display:grid !important;gap:16px !important;overflow:visible !important;}
.posts-sidebar--left .posts-topic-card,
.posts-sidebar--left .posts-offer-card,
.posts-sidebar--left .posts-helper-card,
.posts-sidebar--left .posts-social-card{border:1px solid var(--line) !important;border-radius:22px !important;box-shadow:var(--shadow-sm) !important;background:linear-gradient(145deg, var(--white), #fbf7f9) !important;overflow:hidden;}
.posts-sidebar--left .posts-topic-card,
.posts-sidebar--left .posts-offer-card,
.posts-sidebar--left .posts-helper-card{padding:20px 20px 18px !important;}
.posts-sidebar--left .posts-social-card{padding:14px 18px !important;min-height:0 !important;}
.posts-helper-card{display:flex;flex-direction:column;gap:8px;color:#746e74;}
.posts-helper-card > span{color:var(--green-700);font-size:9px;font-weight:900;letter-spacing:.12em;text-transform:uppercase;}
.posts-helper-card h2{margin:0;color:var(--ink);font-size:24px;line-height:1.08;}
.posts-helper-card__list{margin:0;padding-left:18px;display:grid;gap:7px;}
.posts-helper-card__list li{font-size:11.75px;line-height:1.55;}
.posts-helper-card__link{margin-top:4px;color:var(--green-700);font-size:12px;font-weight:850;text-decoration:none;}
.posts-helper-card__link:hover{text-decoration:underline;}
.posts-mobile-panel .posts-helper-card,
.posts-mobile-extras .posts-helper-card{border:1px solid var(--line);border-radius:20px;background:linear-gradient(145deg, var(--white), #fbf7f9);padding:18px;box-shadow:var(--shadow-sm);}
.posts-sidebar--right .posts-helper-card{display:none !important;}


/* v184: lewa kolumna znowu jako jeden spójny panel */
.posts-sidebar--left{
    height:auto !important;
    min-height:0 !important;
    max-height:none !important;
    top:calc(var(--runtime-header-height) + 24px) !important;
}
.posts-sidebar--left .posts-sidebar__panel{
    height:auto !important;
    min-height:0 !important;
    display:block !important;
    overflow:hidden !important;
    border:1px solid var(--line) !important;
    border-radius:22px !important;
    background:var(--white) !important;
    box-shadow:var(--shadow-sm) !important;
}
.posts-sidebar--left .posts-topic-card,
.posts-sidebar--left .posts-offer-card,
.posts-sidebar--left .posts-helper-card,
.posts-sidebar--left .posts-social-card{
    margin:0 !important;
    min-height:0 !important;
    border:0 !important;
    border-radius:0 !important;
    box-shadow:none !important;
    overflow:visible !important;
}
.posts-sidebar--left .posts-topic-card{
    background:linear-gradient(145deg,#fff,#fbf5f8) !important;
    border-bottom:1px solid var(--line) !important;
}
.posts-sidebar--left .posts-offer-card{
    background:linear-gradient(145deg,#fff,var(--cream)) !important;
    border-bottom:1px solid var(--line) !important;
}
.posts-sidebar--left .posts-helper-card{
    padding:18px 20px !important;
    background:#fff !important;
    border-bottom:1px solid var(--line) !important;
}
.posts-sidebar--left .posts-social-card{
    padding:13px 18px !important;
    background:linear-gradient(145deg,#fff,#faf6f8) !important;
}


/* v185: bez bloku pomocniczego; dwa główne segmenty wypełniają lewy panel */
.posts-sidebar--left .posts-helper-card{display:none !important;}
.posts-sidebar--left .posts-sidebar__panel{
    display:grid !important;
    grid-template-rows:minmax(0,1fr) minmax(0,1fr) auto !important;
    align-content:stretch !important;
}
.posts-sidebar--left .posts-topic-card,
.posts-sidebar--left .posts-offer-card{
    min-height:0 !important;
    padding:24px 22px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-start !important;
}
.posts-sidebar--left .posts-topic-card h2{font-size:28px !important;line-height:1.08 !important;margin:4px 0 10px !important;}
.posts-sidebar--left .posts-offer-card h2{font-size:24px !important;line-height:1.1 !important;margin:4px 0 10px !important;}
.posts-sidebar--left .posts-topic-card p{font-size:13px !important;line-height:1.58 !important;margin:0 0 16px !important;}
.posts-sidebar--left .posts-offer-card p{font-size:12.5px !important;line-height:1.56 !important;margin:0 0 16px !important;}
.posts-sidebar--left .posts-topic-card .button,
.posts-sidebar--left .posts-offer-card .button{
    margin-top:auto !important;
    min-height:46px !important;
    font-size:13px !important;
}
.posts-sidebar--left .posts-social-card{
    min-height:64px !important;
    padding:14px 20px !important;
}
@media (min-width:1180px) and (min-height:760px){
    .posts-sidebar--left{
        height:calc(100dvh - var(--runtime-header-height) - 48px) !important;
        min-height:650px !important;
        max-height:790px !important;
    }
    .posts-sidebar--left .posts-sidebar__panel{height:100% !important;}
}
@media (min-width:1180px) and (max-height:759px){
    .posts-sidebar--left{height:auto !important;min-height:0 !important;max-height:none !important;}
    .posts-sidebar--left .posts-sidebar__panel{height:auto !important;display:block !important;}
}


/* v186: większa czcionka lewego panelu + wielokrotne kategorie */
.posts-sidebar--left .posts-topic-card p{font-size:14.5px !important;line-height:1.68 !important;}
.posts-sidebar--left .posts-offer-card p{font-size:14px !important;line-height:1.66 !important;}
.posts-sidebar--left .posts-topic-card h2{margin-bottom:12px !important;}
.posts-sidebar--left .posts-offer-card h2{margin-bottom:12px !important;}
.admin-category-checklist{display:grid;gap:10px;margin-top:6px;}
.admin-category-check{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid rgba(78,45,64,.14);border-radius:12px;background:#fff;cursor:pointer;}
.admin-category-check input{width:16px;height:16px;accent-color:#7b2f5b;}
.admin-category-check span{font-size:14px;font-weight:600;color:#2e2430;}


/* v189: nieco mniejsza typografia w poście skróconym */
.post-feed-card__copy p{font-size:clamp(16px,1.28vw,20px) !important;line-height:1.65 !important;}
.post-summary-blocks > .post-block--paragraph{font-size:clamp(17px,1.24vw,19px) !important;line-height:1.68 !important;}
.post-summary-blocks > .post-block--list{font-size:clamp(16px,1.16vw,18px) !important;line-height:1.66 !important;}
@media (max-width: 760px){
  .post-feed-card__copy p{font-size:16px !important;}
  .post-summary-blocks > .post-block--paragraph{font-size:16px !important;line-height:1.64 !important;}
  .post-summary-blocks > .post-block--list{font-size:15.5px !important;}
}


/* v190: mniejszy odstęp między wierszami w poście skróconym */
.post-feed-card__copy p{line-height:1.56 !important;}
.post-summary-blocks > .post-block--paragraph{line-height:1.58 !important;}
.post-summary-blocks > .post-block--list{line-height:1.56 !important;}
@media (max-width: 760px){
  .post-feed-card__copy p{line-height:1.52 !important;}
  .post-summary-blocks > .post-block--paragraph{line-height:1.54 !important;}
  .post-summary-blocks > .post-block--list{line-height:1.52 !important;}
}


/* v191: mniejszy odstęp między akapitami w poście skróconym */
.post-summary-blocks > .post-block--paragraph{margin-bottom:14px !important;}
.post-summary-blocks > .post-block--list{margin-bottom:14px !important;}
.post-summary-blocks > .post-block--quote{margin-bottom:14px !important;}
.post-summary-blocks > .post-block-media + .post-block--paragraph,
.post-summary-blocks > .post-block-media + .post-block--heading1,
.post-summary-blocks > .post-block-media + .post-block--heading,
.post-summary-blocks > .post-block-media + .post-block--subheading,
.post-summary-blocks > .post-block-media + .post-block--list,
.post-summary-blocks > .post-block-media + .post-block--quote{margin-top:14px !important;}
@media (max-width:760px){
  .post-summary-blocks > .post-block--paragraph,
  .post-summary-blocks > .post-block--list,
  .post-summary-blocks > .post-block--quote{margin-bottom:12px !important;}
}


/* v192: bardziej zbity tekst tylko w poście skróconym */
.post-feed-card .post-summary-blocks{display:block !important;}
.post-feed-card .post-summary-blocks > .post-block--paragraph{margin-top:0 !important;margin-bottom:8px !important;line-height:1.46 !important;}
.post-feed-card .post-summary-blocks > .post-block--list{margin-top:0 !important;margin-bottom:8px !important;line-height:1.44 !important;}
.post-feed-card .post-summary-blocks > .post-block--quote{margin-top:0 !important;margin-bottom:10px !important;line-height:1.44 !important;}
.post-feed-card .post-summary-blocks > .post-block--heading,
.post-feed-card .post-summary-blocks > .post-block--subheading,
.post-feed-card .post-summary-blocks > .post-block--heading1{margin-bottom:8px !important;}
.post-feed-card .post-summary-blocks > .post-block-media + .post-block--paragraph,
.post-feed-card .post-summary-blocks > .post-block-media + .post-block--heading1,
.post-feed-card .post-summary-blocks > .post-block-media + .post-block--heading,
.post-feed-card .post-summary-blocks > .post-block-media + .post-block--subheading,
.post-feed-card .post-summary-blocks > .post-block-media + .post-block--list,
.post-feed-card .post-summary-blocks > .post-block-media + .post-block--quote{margin-top:10px !important;}
@media (max-width:760px){
  .post-feed-card .post-summary-blocks > .post-block--paragraph,
  .post-feed-card .post-summary-blocks > .post-block--list{margin-bottom:7px !important;line-height:1.42 !important;}
}


/* v193: domknięcie skróconego posta — bez dziury i z justowaniem */
.post-feed-card__copy{padding-bottom:7px !important;}
.post-feed-card__copy p{text-align:justify !important;text-justify:inter-word;}
.post-feed-card .post-summary-blocks > .post-block--paragraph{text-align:justify !important;text-justify:inter-word;margin-bottom:6px !important;line-height:1.46 !important;}
.post-feed-card .post-summary-blocks > .post-block--paragraph:first-child{margin-top:0 !important;}
@media (max-width:760px){
  .post-feed-card__copy{padding-bottom:6px !important;}
  .post-feed-card .post-summary-blocks > .post-block--paragraph{margin-bottom:5px !important;line-height:1.44 !important;}
}


/* v195: trochę luźniejszy układ w poście skróconym po przeniesieniu leadu do summary */
.post-feed-card .post-summary-blocks > .post-block--paragraph{
  margin-bottom: 11px !important;
  line-height: 1.54 !important;
}
.post-feed-card .post-summary-blocks > .post-block--list{
  margin-bottom: 10px !important;
  line-height: 1.5 !important;
}
.post-feed-card .post-summary-blocks > .post-block--quote{
  margin-bottom: 12px !important;
  line-height: 1.5 !important;
}
.post-feed-card .post-summary-blocks > .post-block--heading,
.post-feed-card .post-summary-blocks > .post-block--subheading,
.post-feed-card .post-summary-blocks > .post-block--heading1{
  margin-bottom: 10px !important;
}
.post-feed-card .post-summary-blocks > .post-block-media + .post-block--paragraph,
.post-feed-card .post-summary-blocks > .post-block-media + .post-block--heading1,
.post-feed-card .post-summary-blocks > .post-block-media + .post-block--heading,
.post-feed-card .post-summary-blocks > .post-block-media + .post-block--subheading,
.post-feed-card .post-summary-blocks > .post-block-media + .post-block--list,
.post-feed-card .post-summary-blocks > .post-block-media + .post-block--quote{
  margin-top: 14px !important;
}
@media (max-width:760px){
  .post-feed-card .post-summary-blocks > .post-block--paragraph{
    margin-bottom: 9px !important;
    line-height: 1.5 !important;
  }
  .post-feed-card .post-summary-blocks > .post-block--list{
    margin-bottom: 8px !important;
    line-height: 1.48 !important;
  }
}

/* v197: zaokrąglenie zdjęć wpisów - aktywny bundle */
.post-feed-card .post-summary-blocks > .post-block-media,
.post-feed-card .post-summary-blocks > .post-block-media.post-block-width--normal,
.post-feed-card .post-summary-blocks > .post-block-media.post-block-width--wide,
.post-feed-card .post-summary-blocks > .post-block-media.post-block-width--full{
  overflow:hidden !important;
  border-radius:20px !important;
}
.post-feed-card .post-summary-blocks > .post-block-media img,
.post-feed-card .post-summary-blocks > .post-block-media video,
.post-feed-card .post-summary-blocks > .post-block-media iframe{
  display:block;
  width:100%;
  border-radius:inherit !important;
}
.article-content .post-block-media,
.article-content .post-block-media.post-block-width--normal,
.article-content .post-block-media.post-block-width--wide,
.article-content .post-block-media.post-block-width--full{
  overflow:hidden !important;
  border-radius:20px !important;
}
.article-content .post-block-media img,
.article-content .post-block-media video,
.article-content .post-block-media iframe{
  display:block;
  width:100%;
  border-radius:inherit !important;
}
@media (max-width:680px){
  .post-feed-card .post-summary-blocks > .post-block-media,
  .post-feed-card .post-summary-blocks > .post-block-media.post-block-width--normal,
  .post-feed-card .post-summary-blocks > .post-block-media.post-block-width--wide,
  .post-feed-card .post-summary-blocks > .post-block-media.post-block-width--full,
  .article-content .post-block-media,
  .article-content .post-block-media.post-block-width--normal,
  .article-content .post-block-media.post-block-width--wide,
  .article-content .post-block-media.post-block-width--full{
    border-radius:18px !important;
  }
}


/* v198: promień rogów zdjęcia sterowany z .pdpost
   Pola bloku: rounded (bool), border_radius (0-60 px). */
.post-feed-card .post-summary-blocks > .post-block-media,
.article-content .post-block-media,
.post-editorial-section__media,
.post-media-carousel{
  overflow:hidden;
  border-radius:var(--post-media-radius, 20px) !important;
}
.post-feed-card .post-summary-blocks > .post-block-media img,
.article-content .post-block-media img,
.post-editorial-section__media img,
.post-media-carousel img{
  border-radius:inherit !important;
}


/* v207: podpis pod zdjęciem nie jest przycinany przez zaokrąglenie całego figure.
   Radius z .pdpost dotyczy obrazu; podpis jest osobnym polem pod nim. */
.post-feed-card .post-summary-blocks > figure.post-media.post-block-media,
.article-content figure.post-media.post-block-media,
.post-editorial-section__media{
  overflow:visible !important;
  border-radius:0 !important;
  background:transparent !important;
}

.post-feed-card .post-summary-blocks > figure.post-media.post-block-media > img,
.article-content figure.post-media.post-block-media > img,
.post-editorial-section__media > img{
  display:block;
  width:100%;
  border-radius:var(--post-media-radius, 20px) !important;
}

.post-feed-card .post-summary-blocks > figure.post-media.post-block-media > figcaption,
.article-content figure.post-media.post-block-media > figcaption,
.post-editorial-section__media > figcaption{
  position:static !important;
  inset:auto !important;
  width:auto !important;
  max-width:100% !important;
  margin:8px 0 0 !important;
  padding:9px 12px !important;
  box-sizing:border-box !important;
  overflow:visible !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
  border:1px solid rgba(109,43,76,.10) !important;
  border-radius:min(var(--post-media-radius, 20px), 16px) !important;
  background:#f8f5f7 !important;
  color:var(--muted) !important;
  font-size:11px !important;
  line-height:1.45 !important;
  backdrop-filter:none !important;
}

/* Przy ostrych rogach zdjęcia pole podpisu także pozostaje ostre. */
.post-feed-card .post-summary-blocks > figure.post-media.post-block-media[style*="--post-media-radius:0px"] > figcaption,
.article-content figure.post-media.post-block-media[style*="--post-media-radius:0px"] > figcaption,
.post-editorial-section__media[style*="--post-media-radius:0px"] > figcaption{
  border-radius:0 !important;
}

@media (max-width:680px){
  .post-feed-card .post-summary-blocks > figure.post-media.post-block-media > figcaption,
  .article-content figure.post-media.post-block-media > figcaption,
  .post-editorial-section__media > figcaption{
    margin-top:7px !important;
    padding:8px 10px !important;
    font-size:10px !important;
  }
}

/* v208: podpis pod zdjęciem jako zwykły tekst — bez ramki, tła i osobnej bańki */
.post-feed-card .post-summary-blocks > figure.post-media.post-block-media > figcaption,
.article-content figure.post-media.post-block-media > figcaption,
.post-editorial-section__media > figcaption{
  margin:7px 2px 0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:var(--muted) !important;
  font-size:11px !important;
  font-style:italic !important;
  line-height:1.45 !important;
  backdrop-filter:none !important;
}
@media (max-width:680px){
  .post-feed-card .post-summary-blocks > figure.post-media.post-block-media > figcaption,
  .article-content figure.post-media.post-block-media > figcaption,
  .post-editorial-section__media > figcaption{
    margin-top:6px !important;
    font-size:10px !important;
  }
}

/* v212: nowe logo Piotr Dróżdż */
.brand{flex-direction:row;align-items:center;gap:9px;line-height:1;}
.brand__mark{width:56px;height:auto;flex:0 0 auto;object-fit:contain;}
.brand__wordmark{width:126px;height:auto;flex:0 0 auto;object-fit:contain;}
.brand--footer{gap:6px;}
.brand--footer .brand__mark{width:40px;}
.brand--footer .brand__wordmark{width:90px;}
@media (max-width:940px){
  .brand{gap:7px;}
  .brand__mark{width:46px;}
  .brand__wordmark{width:108px;}
}
@media (max-width:430px){
  .brand__mark{width:42px;}
  .brand__wordmark{width:98px;}
}

/* v213: corrected logo pack + czytelniejszy branding w nagłówku */
.brand{gap:12px !important;align-items:center !important;}
.brand__mark{width:52px !important;height:auto !important;flex:0 0 auto;object-fit:contain;}
.brand__wordmark{width:180px !important;height:auto !important;flex:0 0 auto;object-fit:contain;}
.brand--footer{gap:9px !important;}
.brand--footer .brand__mark{width:43px !important;}
.brand--footer .brand__wordmark{width:138px !important;}
@media (max-width:1120px) and (min-width:941px){
  .brand{gap:9px !important;}
  .brand__mark{width:47px !important;}
  .brand__wordmark{width:158px !important;}
}
@media (max-width:940px){
  .brand{gap:8px !important;}
  .brand__mark{width:45px !important;}
  .brand__wordmark{width:154px !important;}
}
@media (max-width:430px){
  .brand{gap:7px !important;}
  .brand__mark{width:36px !important;}
  .brand__wordmark{width:120px !important;}
}

/* v214: logo dobrane do miejsca zamiast składania znaku i napisu osobno */
.site-header .brand--header{display:inline-flex !important;align-items:center !important;flex:0 0 auto;gap:0 !important;line-height:0;}
.site-header .brand__logo{display:block;width:238px;max-width:none;height:auto;object-fit:contain;}
@media (max-width:1180px) and (min-width:941px){.site-header .brand__logo{width:216px;}.nav-wrap{gap:26px;}}
@media (max-width:940px){.site-header .brand__logo{width:188px;}}
@media (max-width:430px){.site-header .brand__logo{width:156px;}}


/* v215: wordmark-only branding — bez znaku graficznego */
.site-header .brand__logo{
  width:235px !important;
  max-width:none !important;
  height:auto !important;
  object-fit:contain !important;
}
.brand--footer .brand__wordmark{
  width:185px !important;
  max-width:100% !important;
}
@media (max-width:1180px) and (min-width:941px){
  .site-header .brand__logo{width:215px !important;}
}
@media (max-width:940px){
  .site-header .brand__logo{width:190px !important;}
}
@media (max-width:430px){
  .site-header .brand__logo{width:158px !important;}
}

/* v216: logo finalne — jabłko + Piotr Dróżdż / DIETETYK, bez sloganu */
.site-header .brand__logo{
  width:270px !important;
  max-width:none !important;
  height:auto !important;
  object-fit:contain !important;
}
.brand--footer .brand__wordmark{
  width:205px !important;
  max-width:100% !important;
  height:auto !important;
}
@media (max-width:1180px) and (min-width:941px){
  .site-header .brand__logo{width:245px !important;}
}
@media (max-width:940px){
  .site-header .brand__logo{width:210px !important;}
}
@media (max-width:430px){
  .site-header .brand__logo{width:174px !important;}
}


/* v217: pełne logo w headerze — jabłko + slogan; kompaktowe warianty bez zmian */
.site-header .brand__logo{
  width:240px !important;
  max-width:none !important;
  height:auto !important;
  object-fit:contain !important;
}
@media (max-width:1180px) and (min-width:941px){
  .site-header .brand__logo{width:220px !important;}
}
@media (max-width:940px){
  .site-header .brand__logo{width:190px !important;}
}
@media (max-width:430px){
  .site-header .brand__logo{width:160px !important;}
}


/* v218: header aligned with wide home hero on desktop */
@media (min-width:1280px){
  .site-header .nav-wrap{
    width:min(calc(100% - 64px),1440px) !important;
    max-width:1440px !important;
  }
}
@media (min-width:1680px){
  .site-header .nav-wrap{
    width:min(calc(100% - 80px),1480px) !important;
    max-width:1480px !important;
  }
}


/* v224: stopka bez logo — zwarta siatka bez pustej kolumny po dawnym brandingu */
.site-footer--compact .footer-brand-block{display:none !important;}

@media (min-width: 900px){
    .site-footer--compact .container.footer-main{
        min-height:62px !important;
        padding-top:10px !important;
        padding-bottom:10px !important;
        display:grid !important;
        grid-template-columns:minmax(185px,.9fr) minmax(235px,1.05fr) 105px minmax(270px,1.2fr) !important;
        grid-template-areas:"nav contact social meta" !important;
        column-gap:clamp(20px,2.2vw,38px) !important;
        row-gap:0 !important;
        align-items:center !important;
    }
    .site-footer--compact .footer-nav{grid-area:nav !important;}
    .site-footer--compact .footer-contact-block{grid-area:contact !important;justify-self:start !important;}
    .site-footer--compact .footer-social-block{grid-area:social !important;justify-self:center !important;justify-content:center !important;}
    .site-footer--compact .footer-meta-block{grid-area:meta !important;justify-self:end !important;display:grid !important;gap:4px !important;text-align:right !important;}
    .site-footer--compact .footer-meta-block span{display:block !important;}
}

@media (max-width: 899px) and (min-width: 761px){
    .site-footer--compact .container.footer-main{
        min-height:0 !important;
        padding-top:16px !important;
        padding-bottom:16px !important;
        display:grid !important;
        grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
        grid-template-areas:
            "nav contact"
            "social meta" !important;
        column-gap:28px !important;
        row-gap:14px !important;
        align-items:start !important;
    }
    .site-footer--compact .footer-nav{grid-area:nav !important;}
    .site-footer--compact .footer-contact-block{grid-area:contact !important;}
    .site-footer--compact .footer-social-block{grid-area:social !important;justify-self:start !important;justify-content:flex-start !important;}
    .site-footer--compact .footer-meta-block{grid-area:meta !important;justify-self:end !important;text-align:right !important;}
}

@media (max-width: 760px){
    .site-footer--compact .container.footer-main{
        grid-template-areas:
            "nav contact"
            "social social"
            "meta meta" !important;
    }
    .site-footer--compact .footer-nav{grid-area:nav !important;}
    .site-footer--compact .footer-contact-block{grid-area:contact !important;}
    .site-footer--compact .footer-social-block{grid-area:social !important;}
    .site-footer--compact .footer-meta-block{grid-area:meta !important;}
}

/* v225: kompaktowa stopka — maks. 3 pozycje w kolumnie, kontakt pionowo, media w jednym rzędzie */
@media (min-width: 1200px){
    .site-footer--compact .container.footer-main{
        min-height:0 !important;
        padding-top:8px !important;
        padding-bottom:8px !important;
        grid-template-columns:minmax(370px,1.35fr) minmax(220px,.8fr) minmax(170px,.6fr) minmax(300px,1.1fr) !important;
        grid-template-areas:"nav contact social meta" !important;
        column-gap:clamp(22px,2.2vw,40px) !important;
        align-items:center !important;
    }

    .site-footer--compact .footer-nav{
        grid-area:nav !important;
        display:grid !important;
        grid-template-rows:repeat(3,min-content) !important;
        grid-template-columns:repeat(3,max-content) !important;
        grid-auto-flow:column !important;
        grid-auto-columns:max-content !important;
        column-gap:clamp(24px,2vw,38px) !important;
        row-gap:5px !important;
        align-content:center !important;
        justify-content:start !important;
    }

    .site-footer--compact .footer-contact-block{
        grid-area:contact !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        align-content:center !important;
        justify-items:start !important;
        gap:4px !important;
    }
    .site-footer--compact .footer-contact-block .footer-section-label{
        margin:0 0 1px 0 !important;
    }
    .site-footer--compact .footer-contact-block__items{
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:4px !important;
        align-items:start !important;
    }
    .site-footer--compact .footer-contact-block__items a{
        white-space:nowrap !important;
    }

    .site-footer--compact .footer-social-block{
        grid-area:social !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        align-content:center !important;
        justify-content:start !important;
        justify-items:start !important;
        justify-self:start !important;
        gap:5px !important;
    }
    .site-footer--compact .footer-social-block .footer-section-label{
        margin:0 !important;
    }
    .site-footer--compact .footer-social-block .footer-social__icons{
        display:flex !important;
        flex-wrap:nowrap !important;
        justify-content:flex-start !important;
        gap:6px !important;
        white-space:nowrap !important;
    }

    .site-footer--compact .footer-meta-block{
        grid-area:meta !important;
        justify-self:end !important;
        align-content:center !important;
        gap:3px !important;
        text-align:right !important;
    }
}

@media (max-width: 1199px) and (min-width: 900px){
    .site-footer--compact .container.footer-main{
        min-height:0 !important;
        padding-top:12px !important;
        padding-bottom:12px !important;
        grid-template-columns:minmax(0,1.2fr) minmax(210px,.8fr) minmax(170px,.65fr) !important;
        grid-template-areas:
            "nav nav nav"
            "contact social meta" !important;
        column-gap:24px !important;
        row-gap:10px !important;
        align-items:center !important;
    }
    .site-footer--compact .footer-nav{
        grid-area:nav !important;
        display:grid !important;
        grid-template-rows:repeat(3,min-content) !important;
        grid-template-columns:repeat(3,max-content) !important;
        grid-auto-flow:column !important;
        grid-auto-columns:max-content !important;
        column-gap:30px !important;
        row-gap:5px !important;
        justify-content:start !important;
    }
    .site-footer--compact .footer-contact-block{
        grid-area:contact !important;
        display:grid !important;
        gap:4px !important;
        justify-items:start !important;
    }
    .site-footer--compact .footer-contact-block__items{
        display:grid !important;
        gap:4px !important;
    }
    .site-footer--compact .footer-social-block{
        grid-area:social !important;
        display:grid !important;
        grid-template-columns:1fr !important;
        gap:5px !important;
        justify-self:start !important;
        justify-items:start !important;
    }
    .site-footer--compact .footer-social-block .footer-social__icons{
        display:flex !important;
        flex-wrap:nowrap !important;
        justify-content:flex-start !important;
        gap:6px !important;
    }
    .site-footer--compact .footer-meta-block{
        grid-area:meta !important;
        justify-self:end !important;
        text-align:right !important;
    }
}

/* Kontakt zawsze: etykieta nad danymi. Media zawsze: ikony w jednej linii. */
.site-footer--compact .footer-contact-block{
    flex-direction:column !important;
    align-items:flex-start !important;
}
.site-footer--compact .footer-contact-block__items{
    align-items:flex-start !important;
}
.site-footer--compact .footer-social-block .footer-social__icons{
    flex-wrap:nowrap !important;
}

/* v227: etykieta MEDIA wyśrodkowana dokładnie nad rzędem ikon */
.site-footer--compact .footer-social-block{
    grid-template-columns:max-content !important;
    justify-items:center !important;
}
.site-footer--compact .footer-social-block .footer-section-label{
    width:100% !important;
    text-align:center !important;
}
.site-footer--compact .footer-social-block .footer-social__icons{
    justify-content:center !important;
}


/* v242: metamorfoza typu „przypadek / efekt zdrowotny”. */
.transformation-case-image{position:relative;min-height:300px;margin:0;overflow:hidden;border-radius:16px;background:#dbe7e3;}
.transformation-case-image img{width:100%;height:100%;min-height:300px;display:block;object-fit:cover;}
.transformation-case-image figcaption{position:absolute;right:10px;bottom:10px;z-index:1;padding:6px 10px;border-radius:99px;background:rgba(255,255,255,.9);color:var(--green-900);font-size:9px;font-weight:900;letter-spacing:.1em;line-height:1;text-transform:uppercase;}
.transformation-condition{width:max-content;max-width:100%;margin:0 0 10px;padding:6px 10px;border-radius:99px;background:var(--green-50);color:var(--green-800);font-size:10px;font-weight:850;line-height:1.25;letter-spacing:.04em;}
.transformation-result--case{width:auto;min-width:92px;height:auto;min-height:48px;padding:10px 14px;border-radius:16px;}
.transformation-result--case strong{white-space:normal;text-align:center;}


/* v242: mobilny układ pojedynczego zdjęcia przypadku. */
@media(max-width:760px){
.transformation-case-image{min-height:0;}
.transformation-case-image img{min-height:0;height:auto;aspect-ratio:16/10;}
.transformation-result--case{min-width:0;max-width:150px;}
}

/* v257 — rezerwacja spotkań w panelu klienta */
.patient-chat-page__header--booking{display:flex;align-items:center;justify-content:space-between;gap:16px;}
.patient-chat-booking-button{flex:0 0 auto;white-space:nowrap;}
.patient-booking-page .dashboard-content{display:grid;gap:14px;}
.patient-booking-hero{padding:20px 22px;}
.patient-booking-hero h2{margin:6px 0 8px;}
.patient-booking-hero p{margin:0;max-width:780px;color:var(--muted);line-height:1.55;}
.patient-booking-alert{padding:12px 14px;border-radius:12px;font-size:.9rem;font-weight:700;}
.patient-booking-alert.is-success{border:1px solid rgba(38,142,94,.25);background:rgba(38,142,94,.08);color:#236c4d;}
.patient-booking-alert.is-error{border:1px solid rgba(190,55,70,.24);background:rgba(190,55,70,.07);color:#8f2d3b;}
.patient-booking-card{padding:18px 20px;display:grid;gap:14px;}
.patient-booking-step{display:flex;align-items:flex-start;gap:10px;}
.patient-booking-step>span{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:#fff;font-weight:900;flex:0 0 auto;}
.patient-booking-step>div{display:grid;gap:2px;}.patient-booking-step strong{font-size:1rem;}.patient-booking-step small{color:var(--muted);line-height:1.4;}
.patient-booking-options,.patient-booking-staff{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}
.patient-booking-option,.patient-booking-staff__item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--ink);text-decoration:none;transition:.15s ease;}
.patient-booking-option:hover,.patient-booking-staff__item:hover{border-color:rgba(109,43,76,.32);transform:translateY(-1px);}
.patient-booking-option.is-active,.patient-booking-staff__item.is-active{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);background:rgba(109,43,76,.035);}
.patient-booking-option span,.patient-booking-staff__item span{color:var(--muted);font-size:.78rem;}
.patient-booking-staff__item.is-disabled{opacity:.48;pointer-events:none;}
.patient-booking-days{display:grid;gap:10px;}
.patient-booking-day{padding:12px 13px;border:1px solid var(--line);border-radius:12px;background:#fff;display:grid;grid-template-columns:160px minmax(0,1fr);gap:14px;align-items:start;}
.patient-booking-day header{display:grid;gap:2px;}.patient-booking-day header span{color:var(--muted);font-size:.82rem;}
.patient-booking-slots{display:flex;flex-wrap:wrap;gap:7px;}.patient-booking-slots form{margin:0;}.patient-booking-slots button{min-width:70px;padding:9px 11px;border:1px solid rgba(109,43,76,.24);border-radius:10px;background:#fff;color:var(--accent);font:inherit;font-weight:850;cursor:pointer;}.patient-booking-slots button:hover{background:var(--accent);color:#fff;}
.patient-booking-no-slots,.patient-booking-empty{padding:22px;text-align:center;}.patient-booking-no-slots{border:1px dashed var(--line);border-radius:12px;color:var(--muted);}.patient-booking-empty h3{margin-top:0;}.patient-booking-empty p{color:var(--muted);}
@media(max-width:760px){.patient-chat-page__header--booking{align-items:flex-start;flex-direction:column;}.patient-chat-booking-button{width:100%;justify-content:center;}.patient-booking-options,.patient-booking-staff{grid-template-columns:1fr;}.patient-booking-day{grid-template-columns:1fr;}.patient-booking-slots button{min-width:64px;}}


/* v261 — spójny przycisk wyboru pliku w panelu klienta i formularzach */
body input[type="file"]::file-selector-button,
body input[type="file"]::-webkit-file-upload-button {
    min-height: 36px;
    margin: -2px 10px -2px -3px;
    padding: 8px 15px;
    border: 1px solid var(--green-700);
    border-radius: 9px;
    background: var(--green-700);
    color: var(--white);
    font: inherit;
    font-weight: 800;
    line-height: 1.1;
    cursor: pointer;
    transition: background .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}
body input[type="file"]::file-selector-button:hover,
body input[type="file"]::-webkit-file-upload-button:hover {
    border-color: var(--green-900);
    background: var(--green-900);
}
body input[type="file"]:focus-visible {
    border-color: var(--green-600);
    box-shadow: 0 0 0 3px rgba(109,43,76,.11);
    outline: 0;
}


/* v267 — klikalne odnośniki do bibliografii w artykułach */
.article-content .post-citation-link{
  color:#7f274f;
  font-family:inherit;
  font-size:1em;
  font-weight:700;
  line-height:inherit;
  font-variant-numeric:lining-nums tabular-nums;
  font-feature-settings:"lnum" 1,"tnum" 1;
  text-decoration-line:underline;
  text-decoration-style:solid;
  text-decoration-thickness:.075em;
  text-underline-offset:.13em;
  text-decoration-skip-ink:none;
  -webkit-text-decoration-skip:objects;
  cursor:pointer;
}
.article-content .post-citation-link:hover{color:#5f1838;}
.article-content .post-block--bibliography-heading{scroll-margin-top:120px;}
.article-content .post-block--bibliography li[id^="bibliografia-"],
.article-content .post-block--bibliography-item[id^="bibliografia-"]{
  scroll-margin-top:120px;
  border-radius:8px;
  transition:background-color .18s ease, box-shadow .18s ease;
}
.article-content .post-block--bibliography li[id^="bibliografia-"]:target,
.article-content .post-block--bibliography-item[id^="bibliografia-"]:target{
  background:rgba(127,39,79,.08);
  box-shadow:0 0 0 5px rgba(127,39,79,.08);
}
.article-content .post-block--bibliography li::marker{font-weight:700;}

/* v273 — iOS/mobile: normalizacja cyfr w cytowaniach bibliografii */
@media (max-width:760px){
  .article-content .post-citation-link{
    font-family:Georgia, "Times New Roman", serif;
    font-size:1em;
    font-weight:700;
    font-variant-numeric:normal;
    font-feature-settings:normal;
    -webkit-font-feature-settings:normal;
    font-synthesis:none;
    text-decoration-thickness:1px;
    text-underline-offset:2px;
  }
}



/* v291: ręczne umawianie przez chat przy braku wolnych terminów */
.patient-booking-no-slots{display:grid;gap:8px;align-items:start;}
.patient-booking-no-slots>strong{color:var(--ink,#20242b);}
.patient-booking-no-slots>span{color:var(--muted,#756d73);line-height:1.55;}
.patient-booking-no-slots>.button{justify-self:start;margin-top:3px;}


/* v294: przycisk umawiania konsultacji w dolnym pasku czatu */
.patient-chat-page__actions--booking{
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:14px;
}
.patient-chat-page__actions--booking .patient-chat-booking-button{grid-column:1;justify-self:start;width:auto;white-space:nowrap;}
.patient-chat-page__actions--booking .patient-chat-composer__feedback{grid-column:2;text-align:center;}
.patient-chat-page__actions--booking [data-patient-chat-submit]{grid-column:3;justify-self:end;}
@media(max-width:760px){
    .patient-chat-page__actions--booking{grid-template-columns:1fr;}
    .patient-chat-page__actions--booking .patient-chat-booking-button,
    .patient-chat-page__actions--booking .patient-chat-composer__feedback,
    .patient-chat-page__actions--booking [data-patient-chat-submit]{grid-column:1;width:100%;justify-self:stretch;}
    .patient-chat-page__actions--booking .patient-chat-booking-button{grid-row:1;justify-content:center;}
    .patient-chat-page__actions--booking .patient-chat-composer__feedback{grid-row:2;text-align:center;}
    .patient-chat-page__actions--booking [data-patient-chat-submit]{grid-row:3;}
}


/* v296: panel rezerwacji konsultacji — rozwijane dni i lżejszy układ godzin */
.patient-booking-days--accordion{display:grid;gap:12px;}
.patient-booking-day-panel{border:1px solid var(--line);border-radius:16px;background:#fff;overflow:hidden;}
.patient-booking-day-panel[open]{box-shadow:0 8px 22px rgba(81,36,59,.06);}
.patient-booking-day-panel__summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;cursor:pointer;user-select:none;}
.patient-booking-day-panel__summary::-webkit-details-marker{display:none;}
.patient-booking-day-panel__summary::after{content:'+';width:28px;height:28px;display:grid;place-items:center;border-radius:999px;border:1px solid rgba(109,43,76,.18);color:var(--accent);font-weight:900;font-size:1rem;flex:0 0 auto;}
.patient-booking-day-panel[open] .patient-booking-day-panel__summary::after{content:'–';}
.patient-booking-day-panel__lead{display:grid;gap:2px;min-width:0;}
.patient-booking-day-panel__lead strong{font-size:1rem;color:var(--ink);}
.patient-booking-day-panel__lead span{color:var(--muted);font-size:.86rem;}
.patient-booking-day-panel__meta{margin-left:auto;display:grid;gap:2px;justify-items:end;padding-right:8px;min-width:max-content;}
.patient-booking-day-panel__meta span{font-weight:800;color:var(--ink);font-size:.88rem;}
.patient-booking-day-panel__meta small{color:var(--muted);font-size:.8rem;}
.patient-booking-day-panel__body{padding:0 18px 18px;border-top:1px solid rgba(109,43,76,.08);}
.patient-booking-slots--grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:8px;padding-top:14px;}
.patient-booking-slots--grid form{margin:0;}
.patient-booking-slots--grid button{width:100%;min-width:0;padding:10px 10px;border:1px solid rgba(109,43,76,.22);border-radius:12px;background:#fff;color:var(--accent);font:inherit;font-weight:850;cursor:pointer;transition:.15s ease;}
.patient-booking-slots--grid button:hover{background:var(--accent);color:#fff;transform:translateY(-1px);}
@media(max-width:760px){
  .patient-booking-day-panel__summary{align-items:flex-start;flex-wrap:wrap;padding:14px 14px;}
  .patient-booking-day-panel__meta{order:3;width:100%;padding-right:0;justify-items:start;}
  .patient-booking-day-panel__body{padding:0 14px 14px;}
  .patient-booking-slots--grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:480px){
  .patient-booking-slots--grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}


/* v298: panel-konsultacje w bardziej appowym, booksy-like układzie */
.patient-booking-card--booksy{gap:18px;}
.patient-booking-booksy{display:grid;gap:18px;}
.patient-booking-booksy__calendar,.patient-booking-booksy__slots-section{border:1px solid var(--line);border-radius:18px;background:#fff;padding:18px;}
.patient-booking-booksy__monthbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;}
.patient-booking-booksy__monthbar strong{font-size:1.15rem;color:var(--ink);}
.patient-booking-booksy__nav{width:38px;height:38px;display:grid;place-items:center;border-radius:999px;border:1px solid rgba(109,43,76,.18);color:var(--accent);text-decoration:none;font-size:1.4rem;font-weight:700;line-height:1;background:#fff;}
.patient-booking-booksy__nav:hover{background:rgba(109,43,76,.06);}
.patient-booking-booksy__nav.is-disabled{opacity:.35;pointer-events:none;}
.patient-booking-booksy__weekdays,.patient-booking-booksy__days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;}
.patient-booking-booksy__weekdays{margin-bottom:10px;}
.patient-booking-booksy__weekdays span{font-size:.8rem;color:var(--muted);text-align:center;font-weight:700;}
.patient-booking-booksy__day{aspect-ratio:1/1;border-radius:999px;display:grid;place-items:center;text-decoration:none;border:1px solid transparent;background:#fff;color:var(--ink);font-weight:800;transition:.15s ease;}
.patient-booking-booksy__day span{display:grid;place-items:center;width:100%;height:100%;border-radius:999px;}
.patient-booking-booksy__day:hover{border-color:rgba(109,43,76,.2);background:rgba(109,43,76,.03);}
.patient-booking-booksy__day.is-selected{background:var(--accent);color:#fff;box-shadow:0 10px 20px rgba(109,43,76,.18);}
.patient-booking-booksy__day.is-selected:hover{background:var(--accent);}
.patient-booking-booksy__day.is-disabled{color:#c2bcc1;pointer-events:none;}
.patient-booking-booksy__day.is-outside:not(.is-selected){opacity:.55;}
.patient-booking-booksy__selected{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px;}
.patient-booking-booksy__selected strong{font-size:1.05rem;color:var(--ink);}
.patient-booking-booksy__selected span{font-size:.88rem;color:var(--muted);}
.patient-booking-slots--booksy{display:grid;grid-template-columns:repeat(auto-fill,minmax(88px,1fr));gap:10px;}
.patient-booking-slots--booksy form{margin:0;}
.patient-booking-slots--booksy button{width:100%;min-width:0;padding:12px 10px;border:1px solid rgba(109,43,76,.22);border-radius:16px;background:#fff;color:var(--accent);font:inherit;font-weight:900;cursor:pointer;transition:.15s ease;}
.patient-booking-slots--booksy button:hover{background:var(--accent);color:#fff;transform:translateY(-1px);}
@media (max-width:760px){
  .patient-booking-booksy__calendar,.patient-booking-booksy__slots-section{padding:14px;}
  .patient-booking-booksy__monthbar strong{font-size:1rem;}
  .patient-booking-booksy__nav{width:34px;height:34px;font-size:1.25rem;}
  .patient-booking-booksy__weekdays,.patient-booking-booksy__days{gap:6px;}
  .patient-booking-booksy__weekdays span{font-size:.72rem;}
  .patient-booking-slots--booksy{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
  .patient-booking-slots--booksy button{padding:11px 8px;border-radius:14px;}
}


/* v299: panel-konsultacje — desktopowy układ 2 kolumny: kalendarz + godziny */
.patient-booking-booksy{
  grid-template-columns:minmax(340px,420px) minmax(0,1fr);
  align-items:start;
}
.patient-booking-booksy__calendar,
.patient-booking-booksy__slots-section{
  height:auto;
  align-self:start;
}
.patient-booking-booksy__days{
  align-items:start;
}
.patient-booking-booksy__day{
  aspect-ratio:auto;
  min-height:46px;
  height:46px;
  width:100%;
  border-radius:14px;
}
.patient-booking-booksy__day span{
  width:46px;
  height:46px;
  margin:0 auto;
}
.patient-booking-booksy__selected{
  padding-bottom:10px;
  border-bottom:1px solid rgba(109,43,76,.08);
  margin-bottom:14px;
}
.patient-booking-slots--booksy{
  grid-template-columns:repeat(auto-fill,minmax(94px,1fr));
  align-items:start;
}
.patient-booking-slots--booksy button{
  min-height:48px;
}
@media (min-width:761px){
  .patient-booking-booksy__slots-section{
    min-height:100%;
  }
}
@media (max-width:760px){
  .patient-booking-booksy{
    grid-template-columns:1fr;
  }
  .patient-booking-booksy__day{
    min-height:42px;
    height:42px;
    border-radius:12px;
  }
  .patient-booking-booksy__day span{
    width:42px;
    height:42px;
  }
}


/* v353: konsultacje — nadchodzące spotkania, Google Meet i bezpieczne odwołanie */
.patient-booking-upcoming{display:grid;gap:18px;}
.patient-booking-upcoming__list{display:grid;gap:12px;}
.patient-booking-upcoming__item{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px;border:1px solid rgba(31,63,97,.12);border-radius:18px;background:rgba(255,255,255,.68);}
.patient-booking-upcoming__main{display:grid;gap:5px;min-width:0;}
.patient-booking-upcoming__main>strong{font-size:1.03rem;}
.patient-booking-upcoming__main>span,.patient-booking-upcoming__main>small{color:var(--muted);}
.patient-booking-meet-link{display:inline-flex;width:max-content;max-width:100%;align-items:center;gap:7px;margin-top:4px;font-weight:800;color:var(--accent);text-decoration:none;}
.patient-booking-meet-link:hover{text-decoration:underline;}
.patient-booking-upcoming__cancel{display:grid;justify-items:end;gap:6px;flex:0 0 auto;}
.patient-booking-upcoming__cancel small{max-width:240px;text-align:right;color:var(--muted);font-size:.78rem;line-height:1.35;}
.patient-booking-cancel-warning{display:grid;gap:12px;border-color:rgba(170,53,53,.26);background:rgba(170,53,53,.055);}
.patient-booking-cancel-warning h3{margin:0;color:#8f3030;}
.patient-booking-cancel-warning p{margin:0;}
.patient-booking-cancel-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;}
.patient-booking-cancel-danger{border-color:rgba(170,53,53,.30)!important;color:#8f3030!important;}
@media (max-width:720px){
  .patient-booking-upcoming__item{align-items:stretch;flex-direction:column;}
  .patient-booking-upcoming__cancel{justify-items:stretch;}
  .patient-booking-upcoming__cancel small{text-align:left;max-width:none;}
  .patient-booking-upcoming__cancel .button{width:100%;justify-content:center;}
  .patient-booking-cancel-actions{align-items:stretch;flex-direction:column;}
  .patient-booking-cancel-actions .button{width:100%;justify-content:center;}
}


/* v355: odświeżony kalendarz konsultacji — czytelne stany i brak nakładającego się zaznaczenia */
.patient-booking-card--booksy{gap:20px;}
.patient-booking-booksy{gap:20px;}
.patient-booking-booksy__calendar{
  padding:22px;
  border:1px solid rgba(81,36,59,.12);
  border-radius:24px;
  background:linear-gradient(180deg,#fff 0%,#fdfafb 100%);
  box-shadow:0 14px 38px rgba(81,36,59,.055);
}
.patient-booking-booksy__slots-section{
  padding:22px;
  border:1px solid rgba(81,36,59,.12);
  border-radius:24px;
  background:#fff;
  box-shadow:0 14px 38px rgba(81,36,59,.045);
}
.patient-booking-booksy__monthbar{margin-bottom:18px;gap:14px;}
.patient-booking-booksy__monthbar strong{font-size:1.08rem;font-weight:900;letter-spacing:-.015em;color:var(--ink);}
.patient-booking-booksy__nav{
  width:38px;height:38px;
  border:1px solid rgba(81,36,59,.13);
  border-radius:12px;
  background:var(--green-50);
  color:var(--green-700);
  box-shadow:none;
  transition:background .16s ease,border-color .16s ease,transform .16s ease;
}
.patient-booking-booksy__nav:hover{background:var(--green-100);border-color:rgba(81,36,59,.22);transform:translateY(-1px);}
.patient-booking-booksy__nav.is-disabled{background:#faf8f9;color:#bdb5ba;opacity:.7;}
.patient-booking-booksy__weekdays{margin-bottom:8px;}
.patient-booking-booksy__weekdays,.patient-booking-booksy__days{column-gap:6px;row-gap:8px;}
.patient-booking-booksy__weekdays span{font-size:.74rem;font-weight:850;color:#7f747b;letter-spacing:.01em;}
.patient-booking-booksy__day{
  position:relative;
  width:100%;height:42px;min-height:42px;
  border-radius:12px;
  border:1px solid transparent;
  background:transparent;
  color:var(--ink);
  box-shadow:none;
  font-size:.91rem;
  font-weight:850;
  line-height:1;
  overflow:visible;
  transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease;
}
.patient-booking-booksy__day span{
  width:auto!important;height:auto!important;margin:0!important;
  border-radius:0;
  color:inherit;
  line-height:1;
}
a.patient-booking-booksy__day.is-available:not(.is-selected){
  background:var(--green-50);
  border-color:rgba(109,43,76,.08);
  color:var(--green-900);
}
a.patient-booking-booksy__day.is-available:not(.is-selected):hover{
  background:var(--green-100);
  border-color:rgba(109,43,76,.18);
  color:var(--green-900);
  transform:translateY(-1px);
}
.patient-booking-booksy__day.is-selected,
.patient-booking-booksy__day.is-selected:hover{
  background:var(--green-700)!important;
  border-color:var(--green-700)!important;
  color:#fff!important;
  box-shadow:inset 0 -2px 0 rgba(36,21,31,.18)!important;
  transform:none;
}
.patient-booking-booksy__day.is-selected span{color:#fff!important;}
.patient-booking-booksy__day.is-disabled{
  background:transparent!important;
  border-color:transparent!important;
  color:#c7c0c4!important;
  opacity:1;
  box-shadow:none!important;
}
.patient-booking-booksy__day.is-outside:not(.is-selected){opacity:.48;}
.patient-booking-booksy__day.is-today:not(.is-selected)::after{
  content:"";
  position:absolute;
  left:50%;bottom:5px;
  width:4px;height:4px;
  border-radius:50%;
  background:var(--green-600);
  transform:translateX(-50%);
}
.patient-booking-booksy__day.is-disabled.is-today::after{background:#b9afb4;}
.patient-booking-booksy__selected{padding-bottom:13px;margin-bottom:16px;border-bottom:1px solid rgba(81,36,59,.1);}
.patient-booking-booksy__selected strong{font-size:1.02rem;font-weight:900;}
.patient-booking-slots--booksy{gap:9px;}
.patient-booking-slots--booksy button{
  min-height:46px;
  border:1px solid rgba(109,43,76,.16);
  border-radius:13px;
  background:var(--green-50);
  color:var(--green-800);
  box-shadow:none;
}
.patient-booking-slots--booksy button:hover{
  background:var(--green-700);
  border-color:var(--green-700);
  color:#fff;
  transform:translateY(-1px);
}
@media(max-width:760px){
  .patient-booking-booksy__calendar,.patient-booking-booksy__slots-section{padding:16px;border-radius:20px;}
  .patient-booking-booksy__monthbar{margin-bottom:15px;}
  .patient-booking-booksy__nav{width:36px;height:36px;border-radius:11px;}
  .patient-booking-booksy__weekdays,.patient-booking-booksy__days{column-gap:4px;row-gap:6px;}
  .patient-booking-booksy__weekdays span{font-size:.69rem;}
  .patient-booking-booksy__day{height:40px;min-height:40px;border-radius:10px;font-size:.87rem;}
  .patient-booking-booksy__day.is-today:not(.is-selected)::after{bottom:4px;}
}
@media(max-width:420px){
  .patient-booking-booksy__calendar{padding:14px 12px;}
  .patient-booking-booksy__weekdays,.patient-booking-booksy__days{column-gap:3px;}
  .patient-booking-booksy__day{height:38px;min-height:38px;font-size:.84rem;}
}

/* v356: modal ostrzeżenia przy późnym odwołaniu konsultacji */
.patient-booking-cancel-modal{
  position:fixed;
  inset:0;
  z-index:10050;
  display:grid;
  place-items:center;
  padding:24px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .18s ease,visibility .18s ease;
}
.patient-booking-cancel-modal.is-open{opacity:1;visibility:visible;pointer-events:auto;}
.patient-booking-cancel-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(24,18,22,.58);
  backdrop-filter:blur(4px);
  -webkit-backdrop-filter:blur(4px);
}
.patient-booking-cancel-modal__dialog{
  position:relative;
  z-index:1;
  width:min(100%,560px);
  padding:30px;
  border:1px solid rgba(165,61,50,.22);
  border-radius:26px;
  background:#fff;
  box-shadow:0 28px 90px rgba(36,21,31,.28);
  outline:none;
  transform:translateY(10px) scale(.985);
  transition:transform .18s ease;
}
.patient-booking-cancel-modal.is-open .patient-booking-cancel-modal__dialog{transform:translateY(0) scale(1);}
.patient-booking-cancel-modal__eyebrow{
  display:inline-flex;
  margin:0 0 10px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(165,61,50,.08);
  color:#8f3030;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.patient-booking-cancel-modal__dialog h3{margin:0 42px 10px 0;color:var(--ink);font-size:1.45rem;line-height:1.2;}
.patient-booking-cancel-modal__dialog p{margin:0;color:var(--text);line-height:1.58;}
.patient-booking-cancel-modal__dialog p+p{margin-top:10px;}
.patient-booking-cancel-modal__note{color:var(--muted)!important;font-size:.92rem;}
.patient-booking-cancel-modal__close{
  position:absolute;
  top:18px;
  right:18px;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid var(--line);
  border-radius:50%;
  background:#fff;
  color:var(--muted);
  font:inherit;
  font-size:1.45rem;
  line-height:1;
  cursor:pointer;
  transition:background .15s ease,color .15s ease,border-color .15s ease;
}
.patient-booking-cancel-modal__close:hover{background:var(--green-50);border-color:var(--green-100);color:var(--green-800);}
.patient-booking-cancel-modal .patient-booking-cancel-actions{margin-top:22px;}
@media(max-width:620px){
  .patient-booking-cancel-modal{padding:14px;align-items:end;}
  .patient-booking-cancel-modal__dialog{width:100%;padding:24px 20px 20px;border-radius:24px;}
  .patient-booking-cancel-modal__dialog h3{font-size:1.25rem;}
  .patient-booking-cancel-modal__close{top:14px;right:14px;}
  .patient-booking-cancel-modal .patient-booking-cancel-actions{display:grid;grid-template-columns:1fr;}
  .patient-booking-cancel-modal .patient-booking-cancel-actions .button{width:100%;justify-content:center;}
}

/* v357: wybór godziny przed finalnym umówieniem konsultacji */
.patient-booking-slots--booksy .patient-booking-slot-button.is-selected{
  background:var(--green-700);
  border-color:var(--green-700);
  color:#fff;
  box-shadow:0 8px 22px rgba(109,43,76,.16);
  transform:translateY(-1px);
}
.patient-booking-confirm{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-top:20px;
  padding-top:18px;
  border-top:1px solid rgba(81,36,59,.1);
}
.patient-booking-confirm__summary{
  color:var(--muted);
  font-size:.93rem;
}
.patient-booking-confirm__summary strong{
  color:var(--ink);
  font-size:1.02rem;
}
.patient-booking-confirm__button{
  min-width:190px;
  justify-content:center;
}
.patient-booking-confirm__button:disabled{
  opacity:.48;
  cursor:not-allowed;
  transform:none!important;
  box-shadow:none!important;
}
@media(max-width:620px){
  .patient-booking-confirm{display:grid;grid-template-columns:1fr;}
  .patient-booking-confirm__button{width:100%;}
}


/* v358: stały pasek akcji rezerwacji — przycisk nie przeskakuje po wyborze godziny */
.patient-booking-confirm{
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  flex-wrap:nowrap;
  width:100%;
}
.patient-booking-confirm__summary{
  display:block!important;
  flex:1 1 auto;
  min-width:0;
}
.patient-booking-confirm__button{
  flex:0 0 auto;
  margin-left:auto;
}
@media(max-width:620px){
  .patient-booking-confirm{display:flex!important;gap:10px;}
  .patient-booking-confirm__summary{font-size:.84rem;}
  .patient-booking-confirm__summary strong{font-size:.94rem;}
  .patient-booking-confirm__button{width:auto!important;min-width:156px;padding-left:15px;padding-right:15px;}
}

/* v361: bezpieczne częściowe odświeżanie regionów strony. */
[data-dynamic-region] { transition: opacity .16s ease; }
[data-dynamic-region].is-dynamic-loading { opacity: .68; pointer-events: none; }
.dynamic-region-error { margin: 12px 0; padding: 12px 14px; border: 1px solid rgba(142,35,82,.25); border-radius: 12px; background: #fff4f7; color: #741c45; font-weight: 700; }
.dynamic-region-feedback { position: fixed; z-index: 100000; top: 18px; right: 18px; max-width: min(520px, calc(100vw - 36px)); padding: 13px 16px; border-radius: 14px; box-shadow: 0 14px 40px rgba(0,0,0,.16); font-weight: 700; opacity: 0; transform: translateY(-8px); transition: .18s ease; }
.dynamic-region-feedback.is-visible { opacity: 1; transform: translateY(0); }
.dynamic-region-feedback.is-success { background: #edf8f1; color: #17633b; border: 1px solid #b9dfc7; }
.dynamic-region-feedback.is-error { background: #fff1f4; color: #7b1f43; border: 1px solid #e4b7c8; }

/* v368: globalne powiadomienia — jeszcze szersze, wycentrowane u góry i wysuwane z górnej krawędzi ekranu. */
.dashboard-toast,
.dynamic-region-feedback{
  position:fixed !important;
  z-index:100000 !important;
  top:16px !important;
  left:50% !important;
  right:auto !important;
  width:min(1400px,calc(100vw - 32px)) !important;
  max-width:1400px !important;
  box-sizing:border-box !important;
  margin:0 !important;
  padding:15px 20px !important;
  border-radius:14px !important;
  font-size:15px !important;
  line-height:1.45 !important;
  box-shadow:0 18px 48px rgba(49,27,39,.18) !important;
  opacity:0;
  transform:translate(-50%,calc(-100% - 28px)) !important;
  transition:transform .34s cubic-bezier(.22,1,.36,1),opacity .24s ease !important;
  pointer-events:none !important;
}
.dashboard-toast.is-visible,
.dynamic-region-feedback.is-visible{
  opacity:1 !important;
  transform:translate(-50%,0) !important;
}
.dashboard-toast.is-hiding,
.dynamic-region-feedback.is-hiding{
  opacity:0 !important;
  transform:translate(-50%,calc(-100% - 28px)) !important;
}
@media(max-width:640px){
  .dashboard-toast,
  .dynamic-region-feedback{
    top:10px !important;
    width:calc(100vw - 20px) !important;
    max-width:none !important;
    padding:13px 16px !important;
    font-size:13px !important;
    border-radius:12px !important;
  }
}

\n\n/* v372: dynamiczne strony panelu klienta muszą zachowywać pełny viewport i własny scroll. */\n@media (min-width:1025px){\n  body.patient-panel-viewport #main-content > [data-dynamic-region="patient-booking"].dashboard.section,\n  body.patient-panel-viewport #main-content > [data-dynamic-region="patient-intake-form"].dashboard.section{\n    height:100% !important;\n    min-height:0 !important;\n    padding:22px 0 !important;\n    align-items:stretch !important;\n    overflow:hidden !important;\n  }\n  body.patient-panel-viewport #main-content > [data-dynamic-region="patient-booking"] > .dashboard-layout,\n  body.patient-panel-viewport #main-content > [data-dynamic-region="patient-intake-form"] > .dashboard-layout{\n    height:100% !important;\n    min-height:0 !important;\n    align-items:stretch !important;\n    overflow:hidden !important;\n  }\n}\n
/* v374: toasty muszą być w 100% nieprzezroczyste — bez glass/rgba nad nagłówkiem i treścią. */
.dashboard-toast,
.dynamic-region-feedback{
  opacity:0;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  isolation:isolate;
}
.dashboard-toast.is-visible,
.dynamic-region-feedback.is-visible{opacity:1 !important;}
.dashboard-toast.dashboard-alert--success,
.dynamic-region-feedback.is-success{
  background:#eaf6f0 !important;
  color:#14593c !important;
  border-color:#b9d9c3 !important;
}
.dashboard-toast.dashboard-alert--error,
.dynamic-region-feedback.is-error{
  background:#f9e7e4 !important;
  color:#8f2430 !important;
  border-color:#e5b9be !important;
}
.dashboard-toast.dashboard-alert--info{
  background:#eef4fb !important;
  color:#2f4e78 !important;
  border-color:#c4d3e6 !important;
}
.dashboard-toast.dashboard-alert--warning{
  background:#fff7e6 !important;
  color:#77541b !important;
  border-color:#ead6a7 !important;
}

/* ===== v388: osobne wątki czatu klienta + prawy panel rozmów (3 stałe kolumny desktop) ===== */
@media (min-width: 1101px){
body.patient-chat-viewport .dashboard-layout--chat-with-list.container,
body.patient-chat-viewport .dashboard-layout--chat-with-list{
    width:min(calc(100vw - 28px), 1760px) !important;
    max-width:1760px !important;
    grid-template-columns:300px minmax(0, 1fr) 290px !important;
    grid-template-rows:minmax(0, 1fr) !important;
    gap:16px !important;
    align-items:stretch !important;
    overflow:hidden !important;
}
body.patient-chat-viewport .dashboard-layout--chat-with-list > .dashboard-sidebar{
    grid-column:1 !important;
    grid-row:1 !important;
    width:300px !important;
    min-width:300px !important;
    max-width:300px !important;
    height:100% !important;
    min-height:0 !important;
    padding-right:0 !important;
}
body.patient-chat-viewport .dashboard-layout--chat-with-list > .dashboard-content--chat{
    grid-column:2 !important;
    grid-row:1 !important;
    width:100% !important;
    min-width:0 !important;
    height:100% !important;
    min-height:0 !important;
    padding:0 !important;
}
body.patient-chat-viewport .dashboard-layout--chat-with-list > .patient-chat-conversations{
    grid-column:3 !important;
    grid-row:1 !important;
    width:290px !important;
    min-width:290px !important;
    max-width:290px !important;
    height:100% !important;
    min-height:0 !important;
    overflow:hidden !important;
}
body.patient-chat-viewport .patient-chat-conversations__card{height:100%;min-height:0;padding:18px 14px;display:grid;grid-template-rows:auto minmax(0,1fr);gap:14px;overflow:hidden;}
body.patient-chat-viewport .patient-chat-conversations__list{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;}
}
.patient-chat-page__header--conversation{grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:14px 18px;background:linear-gradient(135deg,var(--white),var(--green-50));gap:16px;}
.patient-chat-page__identity{min-width:0;}
.patient-chat-page__header--conversation h2{margin:0;color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:clamp(28px,2.7vw,40px);line-height:1.02;}
.patient-chat-page__header--conversation p{margin:6px 0 0;color:var(--muted);font-size:12px;line-height:1.45;}
.patient-chat-conversations{min-width:0;}
.patient-chat-conversations__card{padding:18px;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--white);box-shadow:var(--shadow-sm);}
.patient-chat-conversations__head{padding:2px 4px 12px;border-bottom:1px solid var(--line);}
.patient-chat-conversations__head h3{margin:10px 0 6px;color:var(--ink);font-family:Georgia,"Times New Roman",serif;font-size:25px;line-height:1.05;}
.patient-chat-conversations__head p{margin:0;color:var(--muted);font-size:11px;line-height:1.5;}
.patient-chat-conversations__list{display:grid;align-content:start;gap:8px;padding-top:12px;}
.patient-chat-conversation-link{min-width:0;padding:11px 10px;border:1px solid var(--line);border-radius:15px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;background:#fdfbfc;color:var(--ink);transition:border-color .16s ease,background .16s ease,transform .16s ease;}
.patient-chat-conversation-link:hover{transform:translateY(-1px);border-color:rgba(123,45,92,.28);background:var(--green-50);}
.patient-chat-conversation-link.is-active{border-color:rgba(123,45,92,.42);background:rgba(123,45,92,.09);box-shadow:inset 3px 0 0 var(--green-700);}
.patient-chat-conversation-link.is-assistant{background:#f8f5fb;}
.patient-chat-conversation-link__avatar{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:var(--green-700);color:#fff;font-size:13px;font-weight:900;}
.patient-chat-conversation-link.is-assistant .patient-chat-conversation-link__avatar{background:#5b4b74;}
.patient-chat-conversation-link__body{min-width:0;display:grid;gap:3px;}
.patient-chat-conversation-link__body strong{overflow:hidden;color:var(--ink);font-size:12px;text-overflow:ellipsis;white-space:nowrap;}
.patient-chat-conversation-link__body small{overflow:hidden;color:var(--muted);font-size:10px;line-height:1.35;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;max-height:2.7em;white-space:normal;overflow-wrap:anywhere;}
.patient-chat-conversation-link.has-unread .patient-chat-conversation-link__body strong,.patient-chat-conversation-link.has-unread .patient-chat-conversation-link__body small{color:var(--ink);font-weight:900;}
.patient-chat-conversation-link>b{min-width:22px;height:22px;padding:0 6px;border-radius:999px;display:grid;place-items:center;background:var(--green-700);color:#fff;font-size:10px;font-weight:900;}
.patient-chat-assistant-composer-note{padding:16px 20px;border-top:1px solid var(--line);display:grid;gap:4px;background:var(--white);}
.patient-chat-assistant-composer-note strong{color:var(--ink);font-size:13px;}
.patient-chat-assistant-composer-note span{color:var(--muted);font-size:11px;line-height:1.5;}
.patient-chat-message--admin strong{color:var(--green-800);}
@media (max-width: 1100px){
body.patient-chat-viewport{overflow:auto;}
body.patient-chat-viewport #main-content{height:auto;min-height:calc(100dvh - var(--header-height));overflow:visible;}
body.patient-chat-viewport .dashboard--chat-page{height:auto;min-height:calc(100dvh - var(--header-height));overflow:visible;}
body.patient-chat-viewport .dashboard-layout--chat-with-list{height:auto;grid-template-columns:1fr;gap:14px;}
body.patient-chat-viewport .dashboard-layout--chat-with-list>.dashboard-sidebar{height:auto;max-height:none;overflow:visible;}
body.patient-chat-viewport .dashboard-content--chat{height:auto;min-height:600px;max-height:none;overflow:visible;}
body.patient-chat-viewport .dashboard-content--chat .patient-chat-page{height:650px;min-height:650px;max-height:650px;}
.patient-chat-conversations{order:-1;}
.patient-chat-conversations__card{height:auto;}
.patient-chat-conversations__list{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width: 700px){
.patient-chat-conversations__list{grid-template-columns:1fr;}
.patient-chat-page__header--conversation{grid-template-columns:1fr;align-items:start;}.patient-chat-page__header--conversation h2{font-size:30px;}
}

/* ===== v389: chat – ten sam górny i dolny margines w każdej kolumnie ===== */
@media (min-width: 1101px){
body.patient-chat-viewport .dashboard-layout--chat-with-list > .dashboard-content--chat,
body.patient-chat-viewport .dashboard-layout--chat-with-list > .patient-chat-conversations{
    height:calc(100% - 44px) !important;
    min-height:0 !important;
    max-height:calc(100% - 44px) !important;
    margin:22px 0 !important;
    align-self:stretch !important;
}
body.patient-chat-viewport .dashboard-layout--chat-with-list > .dashboard-content--chat > .patient-chat-page,
body.patient-chat-viewport .dashboard-layout--chat-with-list > .patient-chat-conversations > .patient-chat-conversations__card{
    height:100% !important;
    min-height:0 !important;
    max-height:100% !important;
}
}

/* v519: zdjęcia profilowe w chacie pacjenta */
.patient-chat-conversation-link__avatar img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}.patient-chat-conversation-link__avatar.is-photo{background:#fff;color:transparent}.patient-chat-conversation-link__avatar--message{width:42px;height:42px;flex:0 0 42px}.patient-chat-message{display:flex;align-items:flex-start;gap:12px}.patient-chat-message__content{min-width:0;display:grid;gap:6px;flex:1}.patient-chat-page__identity{display:flex;align-items:center;gap:14px}.patient-chat-page__identity>div{min-width:0}

/* v519: autor z profilówką przy wpisach */
.posts-feed-card__author-avatar{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,#8b5cf6,#7a2d57);color:#fff;font-weight:800;letter-spacing:.04em;flex:0 0 52px}.posts-feed-card__author-avatar img{width:100%;height:100%;object-fit:cover;display:block;border-radius:inherit}.posts-feed-card__author-avatar.is-photo{background:#fff;color:transparent}.article-entry__author-avatar{width:64px;height:64px;border-radius:20px;flex:0 0 64px}

/* v521: autor wpisu pochodzi z konta administratora */
.post-author-avatar{width:45px;height:45px;border-radius:50%;display:grid;place-items:center;overflow:hidden;flex:0 0 45px;background:#f0dce6;color:#6d2b4c;font-size:11px;font-weight:900}.post-author-avatar img{width:100%;height:100%;object-fit:cover;display:block}.post-author-avatar.is-photo{background:#fff;color:transparent}.post-feed-card__header>.post-author-avatar{align-self:center}.article-byline>.post-author-avatar{width:45px;height:45px;flex-basis:45px}.article-header .article-byline>.post-author-avatar{width:40px;height:40px;flex-basis:40px}@media(max-width:640px){.post-author-avatar{width:40px;height:40px;flex-basis:40px}}

/* v521: chat klienta - bez sidebaru panelu; lista rozmów z prawej przeniesiona na lewo */
@media (min-width:1101px){
  body.patient-chat-viewport .dashboard-layout--chat-with-list{grid-template-columns:310px minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr)!important;gap:16px!important}
  body.patient-chat-viewport .dashboard-layout--chat-with-list>.dashboard-sidebar{display:none!important}
  body.patient-chat-viewport .dashboard-layout--chat-with-list>.patient-chat-conversations{grid-column:1!important;grid-row:1!important;width:310px!important;min-width:310px!important;max-width:310px!important;height:calc(100% - 44px)!important;margin:22px 0!important;order:0!important}
  body.patient-chat-viewport .dashboard-layout--chat-with-list>.dashboard-content--chat{grid-column:2!important;grid-row:1!important;width:100%!important;min-width:0!important;height:calc(100% - 44px)!important;margin:22px 0!important;padding:0!important}
  body.patient-chat-viewport .patient-chat-conversations__card{border-radius:22px!important;background:#fbf8fa!important;border-color:#eadde4!important;box-shadow:0 10px 30px rgba(62,31,47,.055)!important;padding:14px 11px!important}
  body.patient-chat-viewport .patient-chat-conversations__head{padding:5px 7px 12px!important}
  body.patient-chat-viewport .patient-chat-conversations__head .tag{font-size:9px!important}
  body.patient-chat-viewport .patient-chat-conversations__head h3{margin:7px 0 4px!important;font-family:"Segoe UI",Arial,sans-serif!important;font-size:21px!important;font-weight:750!important;letter-spacing:-.025em!important}
  body.patient-chat-viewport .patient-chat-conversations__head p{font-size:10px!important;line-height:1.4!important}
  body.patient-chat-viewport .patient-chat-conversations__list{padding-top:9px!important;gap:5px!important}
  body.patient-chat-viewport .patient-chat-conversation-link{padding:10px 9px!important;border-radius:13px!important;background:transparent!important;border-color:transparent!important;box-shadow:none!important;transform:none!important}
  body.patient-chat-viewport .patient-chat-conversation-link:hover{background:#f4e9ef!important;border-color:#ead5e0!important;transform:none!important}
  body.patient-chat-viewport .patient-chat-conversation-link.is-active{background:#efdae5!important;border-color:#dfbdce!important;box-shadow:inset 3px 0 0 #7a2d57!important}
  body.patient-chat-viewport .dashboard-content--chat>.patient-chat-page{border-radius:22px!important;border-color:#eadde4!important;box-shadow:0 10px 30px rgba(62,31,47,.055)!important;overflow:hidden!important}
  body.patient-chat-viewport .patient-chat-page__header--conversation{padding:11px 17px!important;background:#fff!important;border-bottom:1px solid #eee2e8!important}
  body.patient-chat-viewport .patient-chat-page__header--conversation h2{font-family:"Segoe UI",Arial,sans-serif!important;font-size:22px!important;font-weight:750!important;letter-spacing:-.025em!important}
  body.patient-chat-viewport .patient-chat-page__header--conversation p{margin-top:3px!important;font-size:10px!important}
  body.patient-chat-viewport .patient-chat-page__messages{padding:18px 20px!important;background:linear-gradient(180deg,#fff 0,#fdfbfc 100%)!important}
  body.patient-chat-viewport .patient-chat-message{max-width:min(760px,82%)!important;border-radius:18px!important;box-shadow:0 4px 14px rgba(63,31,48,.04)!important}
  body.patient-chat-viewport .patient-chat-page__composer{padding:11px 16px 13px!important;background:#fff!important;border-top:1px solid #eee2e8!important}
  body.patient-chat-viewport .patient-chat-page__composer textarea{border-radius:15px!important;background:#fdfafb!important}
}
@media (max-width:1100px){body.patient-chat-viewport .dashboard-layout--chat-with-list>.dashboard-sidebar{display:none!important}.patient-chat-conversations{order:-1!important}}

/* v521b: chat klienta bez panelowego sidebaru również dla stanów pustych/zablokowanych */
body.patient-chat-viewport .dashboard-layout--chat:not(.dashboard-layout--chat-with-list){grid-template-columns:minmax(0,1fr)!important;width:min(calc(100vw - 28px),1760px)!important;max-width:1760px!important}
body.patient-chat-viewport .dashboard-layout--chat:not(.dashboard-layout--chat-with-list)>.dashboard-content--chat{grid-column:1!important;width:100%!important;min-width:0!important}
@media(max-width:1100px){body.patient-chat-viewport .dashboard-layout--chat:not(.dashboard-layout--chat-with-list){width:min(calc(100vw - 22px),100%)!important}}

/* v524: chat klienta - pełna szerokość po usunięciu panelu oraz poprawne avatary/bąbelki */
@media (min-width:1101px){
  body.patient-chat-viewport .dashboard--chat-page{width:100%!important;max-width:none!important;padding:18px 0!important}
  body.patient-chat-viewport .dashboard-layout--chat-with-list.container,
  body.patient-chat-viewport .dashboard-layout--chat-with-list{
    width:calc(100vw - 40px)!important;
    max-width:1920px!important;
    margin-inline:auto!important;
    grid-template-columns:300px minmax(0,1fr)!important;
    grid-template-rows:minmax(0,1fr)!important;
    column-gap:16px!important;
    overflow:visible!important;
  }
  body.patient-chat-viewport .dashboard-layout--chat-with-list>.dashboard-sidebar{display:none!important}
  body.patient-chat-viewport .dashboard-layout--chat-with-list>.patient-chat-conversations{
    grid-column:1!important;grid-row:1!important;width:300px!important;min-width:300px!important;max-width:300px!important;
    height:calc(100% - 24px)!important;max-height:calc(100% - 24px)!important;margin:12px 0!important;
  }
  body.patient-chat-viewport .dashboard-layout--chat-with-list>.dashboard-content--chat{
    grid-column:2!important;grid-row:1!important;width:auto!important;min-width:0!important;max-width:none!important;
    height:calc(100% - 24px)!important;max-height:calc(100% - 24px)!important;margin:12px 0!important;padding:0!important;
  }
}
body.patient-chat-viewport .patient-chat-page__messages{padding:20px 24px!important;gap:12px!important}
body.patient-chat-viewport .patient-chat-message{
  width:auto!important;max-width:min(78%,900px)!important;padding:0!important;border-radius:0!important;background:transparent!important;
  box-shadow:none!important;display:flex!important;align-items:flex-start!important;gap:10px!important;margin-right:auto!important;
}
body.patient-chat-viewport .patient-chat-message--user{flex-direction:row-reverse!important;margin-left:auto!important;margin-right:0!important}
body.patient-chat-viewport .patient-chat-message__content{
  flex:0 1 auto!important;min-width:90px!important;max-width:100%!important;padding:12px 15px!important;border-radius:18px!important;
  display:grid!important;gap:5px!important;background:#faf2f6!important;border:1px solid rgba(122,45,87,.055)!important;
}
body.patient-chat-viewport .patient-chat-message--admin .patient-chat-message__content{border-top-left-radius:6px!important}
body.patient-chat-viewport .patient-chat-message--user .patient-chat-message__content{background:#f0e4ea!important;border-top-right-radius:6px!important}
body.patient-chat-viewport .patient-chat-message__content strong{margin:0!important;font-size:12px!important;line-height:1.3!important}
body.patient-chat-viewport .patient-chat-message__content p{font-size:14px!important;line-height:1.55!important}
body.patient-chat-viewport .patient-chat-message__content time{margin-top:4px!important;font-size:10px!important}
body.patient-chat-viewport .patient-chat-conversation-link__avatar{overflow:hidden!important;position:relative!important}
body.patient-chat-viewport .patient-chat-conversation-link__avatar img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;border-radius:50%!important}
body.patient-chat-viewport .patient-chat-conversation-link__avatar.is-photo{background:#efe8ec!important}
body.patient-chat-viewport .patient-chat-conversation-link__avatar--message{width:38px!important;height:38px!important;flex:0 0 38px!important}
@media(max-width:1100px){
  body.patient-chat-viewport .dashboard-layout--chat-with-list{width:min(calc(100vw - 22px),100%)!important;max-width:none!important}
  body.patient-chat-viewport .dashboard-layout--chat-with-list>.dashboard-sidebar{display:none!important}
  body.patient-chat-viewport .patient-chat-message{max-width:92%!important}
}

/* v524: potwierdzenia dynamicznych formularzy bez systemowego confirm */
.dynamic-confirm-dialog{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;padding:20px}.dynamic-confirm-dialog__backdrop{position:absolute;inset:0;background:rgba(38,27,33,.38);backdrop-filter:blur(4px)}.dynamic-confirm-dialog__card{position:relative;width:min(440px,100%);padding:24px;border:1px solid #ead6e1;border-radius:22px;background:#fff;box-shadow:0 30px 90px rgba(50,27,40,.26)}.dynamic-confirm-dialog__card>span{color:#8b2d5f;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.dynamic-confirm-dialog__card h2{margin:5px 0 8px;font-family:Georgia,"Times New Roman",serif;font-size:25px;color:#29262a}.dynamic-confirm-dialog__card p{margin:0;color:#655d62;line-height:1.55;white-space:pre-line}.dynamic-confirm-dialog__card>div:last-child{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.dynamic-confirm-dialog__card button{min-height:40px;padding:9px 16px;border:1px solid #7a2d57;border-radius:999px;background:#fff;color:#7a2d57;font:inherit;font-weight:800;cursor:pointer}.dynamic-confirm-dialog__card [data-dynamic-confirm-ok]{background:#7a2d57;color:#fff}.dynamic-confirm-dialog__x{position:absolute;top:13px;right:14px!important;min-width:32px!important;width:32px;height:32px!important;padding:0!important;border:0!important;background:#f8edf3!important;font-size:20px!important}

/* v524: potwierdzenia dynamicznych formularzy bez systemowego confirm */
.dynamic-confirm-dialog{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;padding:20px}.dynamic-confirm-dialog__backdrop{position:absolute;inset:0;background:rgba(38,27,33,.38);backdrop-filter:blur(4px)}.dynamic-confirm-dialog__card{position:relative;width:min(440px,100%);padding:24px;border:1px solid #ead6e1;border-radius:22px;background:#fff;box-shadow:0 30px 90px rgba(50,27,40,.26)}.dynamic-confirm-dialog__card>span{color:#8b2d5f;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.dynamic-confirm-dialog__card h2{margin:5px 0 8px;font-family:Georgia,"Times New Roman",serif;font-size:25px;color:#29262a}.dynamic-confirm-dialog__card p{margin:0;color:#655d62;line-height:1.55;white-space:pre-line}.dynamic-confirm-dialog__card>div:last-child{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.dynamic-confirm-dialog__card button{min-height:40px;padding:9px 16px;border:1px solid #7a2d57;border-radius:999px;background:#fff;color:#7a2d57;font:inherit;font-weight:800;cursor:pointer}.dynamic-confirm-dialog__card [data-dynamic-confirm-ok]{background:#7a2d57;color:#fff}.dynamic-confirm-dialog__x{position:absolute;top:13px;right:14px!important;min-width:32px!important;width:32px;height:32px!important;padding:0!important;border:0!important;background:#f8edf3!important;font-size:20px!important}

/* v601: lżejszy scrollbar powiadomień + szybki mini-chat jak w komunikatorze. */
.panel-notifications__list{
    scrollbar-width:thin;
    scrollbar-color:rgba(109,43,76,.58) transparent;
    scrollbar-gutter:stable;
}
.panel-notifications__list::-webkit-scrollbar{width:7px;}
.panel-notifications__list::-webkit-scrollbar-track{background:transparent;margin:9px 0;}
.panel-notifications__list::-webkit-scrollbar-thumb{
    border:2px solid transparent;
    border-radius:999px;
    background:rgba(109,43,76,.58);
    background-clip:padding-box;
}
.panel-notifications__list::-webkit-scrollbar-thumb:hover{background:rgba(109,43,76,.78);background-clip:padding-box;}

.patient-mini-chat{
    position:fixed;
    z-index:260;
    right:22px;
    bottom:18px;
    width:min(372px,calc(100vw - 28px));
    height:min(560px,calc(100dvh - 112px));
    min-height:360px;
    overflow:hidden;
    border:1px solid var(--line);
    border-radius:22px;
    display:grid;
    grid-template-rows:auto minmax(0,1fr) auto;
    background:var(--white);
    box-shadow:0 24px 70px rgba(81,36,59,.22),0 8px 24px rgba(32,36,43,.10);
}
.patient-mini-chat[hidden]{display:none!important;}
.patient-mini-chat__header{
    min-height:62px;
    padding:10px 11px 10px 13px;
    border-bottom:1px solid var(--line);
    display:grid;
    grid-template-columns:40px minmax(0,1fr) 34px 34px;
    align-items:center;
    gap:9px;
    background:linear-gradient(180deg,var(--white),var(--green-50));
}
.patient-mini-chat__avatar{
    width:40px;height:40px;border-radius:50%;display:grid;place-items:center;
    background:var(--green-700);color:var(--white);font-size:12px;font-weight:900;letter-spacing:.02em;
}
.patient-mini-chat__identity{min-width:0;display:grid;gap:1px;}
.patient-mini-chat__identity strong{overflow:hidden;color:var(--ink);font-size:14px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap;}
.patient-mini-chat__identity span{color:var(--muted);font-size:10px;font-weight:700;}
.patient-mini-chat__open,.patient-mini-chat__close{
    width:34px;height:34px;padding:0;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;
    background:var(--white);color:var(--green-800);font-size:17px;font-weight:800;line-height:1;cursor:pointer;
}
.patient-mini-chat__open:hover,.patient-mini-chat__close:hover{border-color:rgba(109,43,76,.36);background:var(--green-50);}
.patient-mini-chat__messages{
    min-height:0;
    padding:14px 12px 10px;
    overflow-y:auto;
    overscroll-behavior:contain;
    display:flex;
    flex-direction:column;
    gap:8px;
    background:linear-gradient(180deg,#fff 0%,#fdf9fb 100%);
    scrollbar-width:thin;
    scrollbar-color:rgba(109,43,76,.48) transparent;
}
.patient-mini-chat__messages::-webkit-scrollbar{width:7px;}
.patient-mini-chat__messages::-webkit-scrollbar-track{background:transparent;margin:8px 0;}
.patient-mini-chat__messages::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:999px;background:rgba(109,43,76,.48);background-clip:padding-box;}
.patient-mini-chat__loading,.patient-mini-chat__empty{margin:auto;padding:28px 18px;color:var(--muted);font-size:12px;text-align:center;}
.patient-mini-chat__message{width:100%;display:flex;}
.patient-mini-chat__message.is-mine{justify-content:flex-end;}
.patient-mini-chat__message.is-theirs{justify-content:flex-start;}
.patient-mini-chat__bubble{
    max-width:82%;
    padding:9px 11px 7px;
    border-radius:16px;
    display:grid;
    gap:5px;
    box-shadow:0 3px 10px rgba(81,36,59,.06);
}
.patient-mini-chat__message.is-theirs .patient-mini-chat__bubble{border:1px solid var(--line);border-bottom-left-radius:6px;background:var(--white);color:var(--ink);}
.patient-mini-chat__message.is-mine .patient-mini-chat__bubble{border:1px solid var(--green-700);border-bottom-right-radius:6px;background:var(--green-700);color:var(--white);}
.patient-mini-chat__bubble p{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;line-height:1.42;}
.patient-mini-chat__bubble time{justify-self:end;opacity:.68;font-size:8px;font-weight:700;}
.patient-mini-chat__attachment{display:block;overflow:hidden;border-radius:11px;background:rgba(0,0,0,.04);}
.patient-mini-chat__attachment img{width:100%;max-height:180px;object-fit:cover;}
.patient-mini-chat__composer{
    padding:10px;
    border-top:1px solid var(--line);
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:end;
    gap:8px;
    background:var(--white);
}
.patient-mini-chat__composer[hidden]{display:none!important;}
.patient-mini-chat__composer textarea{
    width:100%;max-height:96px;min-height:40px;padding:10px 12px;border:1px solid var(--line);border-radius:16px;
    resize:none;background:var(--green-50);color:var(--ink);font-size:12px;line-height:1.4;outline:none;
}
.patient-mini-chat__composer textarea:focus{border-color:var(--green-600);background:var(--white);box-shadow:0 0 0 3px rgba(138,66,100,.10);}
.patient-mini-chat__composer button{
    min-width:72px;height:40px;padding:0 14px;border:1px solid var(--green-700);border-radius:999px;
    background:var(--green-700);color:var(--white);font-size:11px;font-weight:900;cursor:pointer;
}
.patient-mini-chat__composer button:disabled{opacity:.55;cursor:wait;}
.patient-mini-chat__readonly{padding:12px 14px;border-top:1px solid var(--line);background:var(--green-50);color:var(--muted);font-size:11px;line-height:1.45;text-align:center;}
.patient-mini-chat__readonly[hidden]{display:none!important;}

@media (max-width:700px){
    .patient-mini-chat{right:8px;bottom:8px;width:calc(100vw - 16px);height:min(68dvh,560px);min-height:330px;border-radius:20px;}
    .patient-mini-chat__header{grid-template-columns:38px minmax(0,1fr) 34px 34px;}
    .patient-mini-chat__avatar{width:38px;height:38px;}
}


/* v608: stale, pelne szerokosci kart powiadomien. */
.panel-notifications__menu{
    width:360px;
    max-width:calc(100vw - 28px);
}
.panel-notifications__menu [data-notifications-content],
.panel-notifications__list{
    width:100%;
    min-width:0;
    box-sizing:border-box;
}
.panel-notifications__list{
    display:grid;
    grid-template-columns:minmax(0,1fr);
    justify-items:stretch;
    align-items:stretch;
}
.panel-notifications__item{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    box-sizing:border-box;
    justify-self:stretch;
}


/* v610: wszystkie wpisy powiadomień mają wspólną lewą krawędź. */
.panel-notifications__list{display:block!important;}
.panel-notifications__item{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  text-align:left!important;
  justify-items:stretch!important;
}
.panel-notifications__body,
.panel-notifications__title-row,
.panel-notifications__body > strong,
.panel-notifications__body > small,
.panel-notifications__body > span,
.panel-notifications__body time{
  text-align:left!important;
}
.panel-notifications__body{justify-self:stretch!important;}
.panel-notifications__body > span{justify-content:flex-start!important;gap:8px!important;}

/* v611: zawartość listy powiadomień zawsze od lewej krawędzi. */
.panel-notifications__list{
    padding-left:0!important;
    padding-right:0!important;
    text-align:left!important;
}
.panel-notifications__item{
    display:grid!important;
    grid-template-columns:38px minmax(0,1fr)!important;
    justify-content:start!important;
    justify-items:stretch!important;
    text-align:left!important;
}
.panel-notifications__body{
    width:100%!important;
    min-width:0!important;
    justify-self:stretch!important;
    align-items:start!important;
    text-align:left!important;
}
.panel-notifications__title-row{
    width:100%!important;
    justify-content:flex-start!important;
    text-align:left!important;
}
.panel-notifications__title-row .panel-notifications__unread-dot{margin-left:auto;}
.panel-notifications__body > small,
.panel-notifications__body > time,
.panel-notifications__body > span{justify-self:start!important;text-align:left!important;}


/* v613: treść wszystkich wpisów powiadomień zaczyna się od jednej lewej krawędzi. */
.panel-notifications__menu,
.panel-notifications__menu [data-notifications-content],
.panel-notifications__list{text-align:left!important;}
.panel-notifications__item{
  width:100%!important;
  padding-left:14px!important;
  padding-right:14px!important;
  margin:0!important;
  grid-template-columns:38px minmax(0,1fr)!important;
  justify-content:start!important;
  justify-items:stretch!important;
  text-align:left!important;
}
.panel-notifications__icon{justify-self:start!important;}
.panel-notifications__body,
.panel-notifications__title-row,
.panel-notifications__body > small,
.panel-notifications__body > span{
  width:100%!important;
  min-width:0!important;
  justify-self:stretch!important;
  text-align:left!important;
}
.panel-notifications__title-row{justify-content:flex-start!important;}
.panel-notifications__title-row .panel-notifications__unread-dot{margin-left:auto!important;}
.panel-notifications__body > span{justify-content:flex-start!important;}

/* v737: rozbudowany system układów i wyglądu zdjęć z .pdpost v4 */
.post-media--aspect-21-9 > img,
.post-media--aspect-21-9 .post-gallery__slide > img,
.post-editorial-section__media.post-media--aspect-21-9 > img{aspect-ratio:21/9!important;}
.post-media--aspect-16-9 > img,
.post-media--aspect-16-9 .post-gallery__slide > img,
.post-editorial-section__media.post-media--aspect-16-9 > img{aspect-ratio:16/9!important;}
.post-media--aspect-3-2 > img,
.post-media--aspect-3-2 .post-gallery__slide > img,
.post-editorial-section__media.post-media--aspect-3-2 > img{aspect-ratio:3/2!important;}
.post-media--aspect-4-3 > img,
.post-media--aspect-4-3 .post-gallery__slide > img,
.post-editorial-section__media.post-media--aspect-4-3 > img{aspect-ratio:4/3!important;}
.post-media--aspect-1-1 > img,
.post-media--aspect-1-1 .post-gallery__slide > img,
.post-editorial-section__media.post-media--aspect-1-1 > img{aspect-ratio:1/1!important;}
.post-media--aspect-4-5 > img,
.post-media--aspect-4-5 .post-gallery__slide > img,
.post-editorial-section__media.post-media--aspect-4-5 > img{aspect-ratio:4/5!important;}
.post-media--aspect-auto > img,
.post-media--aspect-auto .post-gallery__slide > img,
.post-editorial-section__media.post-media--aspect-auto > img{aspect-ratio:auto!important;height:auto!important;}

.post-media--fit-cover > img,
.post-media--fit-cover .post-gallery__slide > img,
.post-editorial-section__media.post-media--fit-cover > img{object-fit:cover!important;}
.post-media--fit-contain > img,
.post-media--fit-contain .post-gallery__slide > img,
.post-editorial-section__media.post-media--fit-contain > img{object-fit:contain!important;background:#f7f4f6!important;}
.post-media--position-center > img,.post-media--position-center .post-gallery__slide > img,.post-editorial-section__media.post-media--position-center > img{object-position:center center!important;}
.post-media--position-top > img,.post-media--position-top .post-gallery__slide > img,.post-editorial-section__media.post-media--position-top > img{object-position:center top!important;}
.post-media--position-bottom > img,.post-media--position-bottom .post-gallery__slide > img,.post-editorial-section__media.post-media--position-bottom > img{object-position:center bottom!important;}
.post-media--position-left > img,.post-media--position-left .post-gallery__slide > img,.post-editorial-section__media.post-media--position-left > img{object-position:left center!important;}
.post-media--position-right > img,.post-media--position-right .post-gallery__slide > img,.post-editorial-section__media.post-media--position-right > img{object-position:right center!important;}
.post-media--position-top-left > img,.post-media--position-top-left .post-gallery__slide > img,.post-editorial-section__media.post-media--position-top-left > img{object-position:left top!important;}
.post-media--position-top-right > img,.post-media--position-top-right .post-gallery__slide > img,.post-editorial-section__media.post-media--position-top-right > img{object-position:right top!important;}
.post-media--position-bottom-left > img,.post-media--position-bottom-left .post-gallery__slide > img,.post-editorial-section__media.post-media--position-bottom-left > img{object-position:left bottom!important;}
.post-media--position-bottom-right > img,.post-media--position-bottom-right .post-gallery__slide > img,.post-editorial-section__media.post-media--position-bottom-right > img{object-position:right bottom!important;}

.post-media--shadow-soft > img,.post-editorial-section__media.post-media--shadow-soft > img{box-shadow:0 12px 30px rgba(40,26,34,.14)!important;}
.post-media--shadow-strong > img,.post-editorial-section__media.post-media--shadow-strong > img{box-shadow:0 18px 44px rgba(40,26,34,.24)!important;}
.post-media-carousel.post-media--shadow-soft .post-gallery__viewport{box-shadow:0 12px 30px rgba(40,26,34,.14)!important;}
.post-media-carousel.post-media--shadow-strong .post-gallery__viewport{box-shadow:0 18px 44px rgba(40,26,34,.24)!important;}
.post-media--border-subtle > img,.post-editorial-section__media.post-media--border-subtle > img{border:1px solid rgba(109,43,76,.16)!important;}
.post-media--border-accent > img,.post-editorial-section__media.post-media--border-accent > img{border:2px solid rgba(118,43,82,.62)!important;}
.post-media-carousel.post-media--border-subtle .post-gallery__viewport{border:1px solid rgba(109,43,76,.16)!important;}
.post-media-carousel.post-media--border-accent .post-gallery__viewport{border:2px solid rgba(118,43,82,.62)!important;}

.article-content .post-block-media.post-media--align-left,.post-summary-blocks>.post-block-media.post-media--align-left{margin-left:0!important;margin-right:auto!important;}
.article-content .post-block-media.post-media--align-center,.post-summary-blocks>.post-block-media.post-media--align-center{margin-left:auto!important;margin-right:auto!important;}
.article-content .post-block-media.post-media--align-right,.post-summary-blocks>.post-block-media.post-media--align-right{margin-left:auto!important;margin-right:0!important;}

.post-editorial-section:not(.post-editorial-section--text-only){display:grid!important;align-items:start;gap:clamp(24px,3.2vw,46px);overflow:visible!important;}
.post-editorial-section--layout-right.post-editorial-section--text-wide{grid-template-columns:minmax(0,1.65fr) minmax(260px,.8fr);}
.post-editorial-section--layout-right.post-editorial-section--equal{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
.post-editorial-section--layout-right.post-editorial-section--media-wide{grid-template-columns:minmax(0,.86fr) minmax(300px,1.25fr);}
.post-editorial-section--layout-left.post-editorial-section--text-wide{grid-template-columns:minmax(260px,.8fr) minmax(0,1.65fr);}
.post-editorial-section--layout-left.post-editorial-section--equal{grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
.post-editorial-section--layout-left.post-editorial-section--media-wide{grid-template-columns:minmax(300px,1.25fr) minmax(0,.86fr);}
.post-editorial-section--layout-right .post-editorial-section__copy{grid-column:1;grid-row:1;}
.post-editorial-section--layout-right .post-editorial-section__media{grid-column:2;grid-row:1;}
.post-editorial-section--layout-left .post-editorial-section__media{grid-column:1;grid-row:1;}
.post-editorial-section--layout-left .post-editorial-section__copy{grid-column:2;grid-row:1;}
.post-editorial-section--layout-top,.post-editorial-section--layout-bottom,.post-editorial-section--layout-wide-top,.post-editorial-section--layout-wide-bottom{grid-template-columns:1fr!important;}
.post-editorial-section--layout-top .post-editorial-section__media{grid-row:1;width:min(78%,840px);justify-self:center;}
.post-editorial-section--layout-top .post-editorial-section__copy{grid-row:2;}
.post-editorial-section--layout-bottom .post-editorial-section__copy{grid-row:1;}
.post-editorial-section--layout-bottom .post-editorial-section__media{grid-row:2;width:min(78%,840px);justify-self:center;}
.post-editorial-section--layout-wide-top .post-editorial-section__media{grid-row:1;width:100%;justify-self:stretch;}
.post-editorial-section--layout-wide-top .post-editorial-section__copy{grid-row:2;}
.post-editorial-section--layout-wide-bottom .post-editorial-section__copy{grid-row:1;}
.post-editorial-section--layout-wide-bottom .post-editorial-section__media{grid-row:2;width:100%;justify-self:stretch;}
.post-editorial-section__media{float:none!important;margin:0!important;width:100%;min-width:0;}
.post-editorial-section__media>img{width:100%;display:block;}
@media(max-width:760px){
  .post-editorial-section:not(.post-editorial-section--text-only){grid-template-columns:1fr!important;gap:20px;}
  .post-editorial-section--layout-right .post-editorial-section__copy,.post-editorial-section--layout-left .post-editorial-section__copy{grid-column:1;grid-row:2;}
  .post-editorial-section--layout-right .post-editorial-section__media,.post-editorial-section--layout-left .post-editorial-section__media{grid-column:1;grid-row:1;}
  .post-editorial-section--layout-bottom .post-editorial-section__copy,.post-editorial-section--layout-wide-bottom .post-editorial-section__copy{grid-row:1;}
  .post-editorial-section--layout-bottom .post-editorial-section__media,.post-editorial-section--layout-wide-bottom .post-editorial-section__media{grid-row:2;}
  .post-editorial-section--layout-top .post-editorial-section__media,.post-editorial-section--layout-bottom .post-editorial-section__media{width:100%;}
}
.post-media-carousel.post-media--aspect-21-9 .post-gallery__slide>video,.post-media-carousel.post-media--aspect-21-9 .post-gallery__slide>iframe{aspect-ratio:21/9!important;}
.post-media-carousel.post-media--aspect-16-9 .post-gallery__slide>video,.post-media-carousel.post-media--aspect-16-9 .post-gallery__slide>iframe{aspect-ratio:16/9!important;}
.post-media-carousel.post-media--aspect-3-2 .post-gallery__slide>video,.post-media-carousel.post-media--aspect-3-2 .post-gallery__slide>iframe{aspect-ratio:3/2!important;}
.post-media-carousel.post-media--aspect-4-3 .post-gallery__slide>video,.post-media-carousel.post-media--aspect-4-3 .post-gallery__slide>iframe{aspect-ratio:4/3!important;}
.post-media-carousel.post-media--aspect-1-1 .post-gallery__slide>video,.post-media-carousel.post-media--aspect-1-1 .post-gallery__slide>iframe{aspect-ratio:1/1!important;}
.post-media-carousel.post-media--aspect-4-5 .post-gallery__slide>video,.post-media-carousel.post-media--aspect-4-5 .post-gallery__slide>iframe{aspect-ratio:4/5!important;}

/* v744: niedestrukcyjny swobodny kadr zapisany w bloku zdjęcia */
.post-media--free-crop > .post-media__crop{position:relative;display:block;width:var(--post-crop-frame-width,100%);margin-left:var(--post-crop-frame-left,0%);aspect-ratio:var(--post-crop-ratio,16/9);overflow:hidden;border-radius:var(--post-media-radius,20px);background:#f7f4f6;box-sizing:border-box;}.post-media--free-crop > .post-media__crop > img{position:absolute!important;display:block!important;top:var(--post-crop-image-top,0%)!important;left:var(--post-crop-image-left,0%)!important;width:var(--post-crop-image-width,100%)!important;max-width:none!important;height:auto!important;aspect-ratio:auto!important;object-fit:fill!important;object-position:center!important;border:0!important;border-radius:0!important;box-shadow:none!important;}.post-media--free-crop.post-media--shadow-soft > .post-media__crop{box-shadow:0 12px 30px rgba(40,26,34,.14)!important;}.post-media--free-crop.post-media--shadow-strong > .post-media__crop{box-shadow:0 18px 44px rgba(40,26,34,.24)!important;}.post-media--free-crop.post-media--border-subtle > .post-media__crop{border:1px solid rgba(109,43,76,.16)!important;}.post-media--free-crop.post-media--border-accent > .post-media__crop{border:2px solid rgba(118,43,82,.62)!important;}

/* v796: zapisywany rozmiar pojedynczego medium z edytora / .pdpost v5 */
.post-media--custom-width{width:var(--post-media-custom-width,100%)!important;max-width:100%!important;}


/* v835: multimedia w sekcjach redakcyjnych */
.post-editorial-section__media>video,.post-editorial-section__media>iframe{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:var(--post-media-radius,20px);background:#111}.post-editorial-section__media>.post-gallery{width:100%!important;max-width:none!important;margin:0!important}.post-editorial-section__media>.post-gallery .post-gallery__viewport{border-radius:var(--post-media-radius,20px)}.post-editorial-section__caption{padding-top:8px;color:var(--muted);font-size:11px;line-height:1.45}.post-editorial-section__media>.post-gallery.post-block-width--normal{width:100%!important}.post-editorial-section__media .post-gallery__slide>img,.post-editorial-section__media .post-gallery__slide>video,.post-editorial-section__media .post-gallery__slide>iframe{width:100%;height:auto;min-height:0;aspect-ratio:16/9;object-fit:cover}

/* v848: 6 profili społecznościowych — LinkedIn i Pinterest */
.home-social__icons{max-width:290px;}
.footer-social__icons{display:flex;flex-wrap:wrap;justify-content:flex-end;max-width:210px;}
.posts-social-card{align-items:flex-start;}
.posts-social-card__icons{display:grid;grid-template-columns:repeat(3,34px);justify-content:end;gap:6px;}
@media(max-width:700px){.posts-social-card__icons{grid-template-columns:repeat(6,42px);justify-content:flex-start;max-width:100%;}.home-social__icons{max-width:none;}.footer-social__icons{max-width:none;}}
@media(max-width:390px){.posts-social-card__icons{grid-template-columns:repeat(3,42px);}}

/* v850: globalne, czytelne layouty ikon social media */
.social-icon-links--layout-contrast .social-icon-link{background:#fff!important;color:#241d23!important;border-color:rgba(255,255,255,.56)!important;box-shadow:0 4px 14px rgba(0,0,0,.12)!important;}
.social-icon-links--layout-accent .social-icon-link{background:#fff!important;color:#762b52!important;border-color:rgba(118,43,82,.30)!important;box-shadow:0 4px 14px rgba(0,0,0,.10)!important;}
.social-icon-links--layout-soft .social-icon-link{background:#f7edf2!important;color:#762b52!important;border-color:rgba(118,43,82,.14)!important;box-shadow:none!important;}
.social-icon-links--layout-brand .social-icon-link{background:#fff!important;border-color:rgba(34,28,32,.12)!important;box-shadow:0 4px 14px rgba(0,0,0,.10)!important;}
.social-icon-links--layout-brand .social-icon-link--youtube{color:#ff0000!important;}
.social-icon-links--layout-brand .social-icon-link--tiktok{color:#111!important;}
.social-icon-links--layout-brand .social-icon-link--tiktok svg{filter:drop-shadow(-1px 0 #25f4ee) drop-shadow(1px 0 #fe2c55);}
.social-icon-links--layout-brand .social-icon-link--instagram{color:#e4405f!important;background:#fff!important;border-color:rgba(228,64,95,.24)!important;}
.social-icon-links--layout-brand .social-icon-link--facebook{color:#1877f2!important;}
.social-icon-links--layout-brand .social-icon-link--linkedin{color:#0a66c2!important;}
.social-icon-links--layout-brand .social-icon-link--pinterest{color:#e60023!important;}
.social-icon-links[class*="social-icon-links--layout-"] .social-icon-link:hover,
.social-icon-links[class*="social-icon-links--layout-"] .social-icon-link:focus-visible{transform:translateY(-2px);filter:brightness(.98);}
.footer-social__icons.social-icon-links{gap:6px!important;max-width:228px!important;}
.footer-social__icons.social-icon-links .social-icon-link{width:32px!important;height:32px!important;min-width:32px!important;min-height:32px!important;}
.footer-social__icons.social-icon-links .social-icon-link svg{width:17px!important;height:17px!important;}
@media(max-width:430px){.footer-social__icons.social-icon-links .social-icon-link{width:30px!important;height:30px!important;min-width:30px!important;min-height:30px!important}.footer-social__icons.social-icon-links .social-icon-link svg{width:16px!important;height:16px!important}}


/* v853: Media w sidebarze postów — ikony zawsze w jednym wierszu */
.posts-sidebar--left .posts-social-card{
    display:grid !important;
    grid-template-columns:auto minmax(0,1fr) !important;
    align-items:center !important;
    gap:12px !important;
}
.posts-sidebar--left .posts-social-card h2,
.posts-sidebar--left .posts-social-card > h2{
    margin:0 !important;
    min-width:0 !important;
}
.posts-sidebar--left .posts-social-card__icons{
    display:flex !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:6px !important;
    min-width:0 !important;
    max-width:100% !important;
}
.posts-sidebar--left .posts-social-card__icons .social-icon-link{
    width:32px !important;
    height:32px !important;
    min-width:32px !important;
    min-height:32px !important;
}
.posts-sidebar--left .posts-social-card__icons .social-icon-link svg{
    width:15px !important;
    height:15px !important;
}
@media (max-width: 430px){
    .posts-sidebar--left .posts-social-card{
        gap:10px !important;
        padding:12px 16px !important;
    }
    .posts-sidebar--left .posts-social-card__icons{
        gap:5px !important;
    }
    .posts-sidebar--left .posts-social-card__icons .social-icon-link{
        width:30px !important;
        height:30px !important;
        min-width:30px !important;
        min-height:30px !important;
    }
    .posts-sidebar--left .posts-social-card__icons .social-icon-link svg{
        width:14px !important;
        height:14px !important;
    }
}


/* v857: stopka — zmieniamy wyłącznie tło kółka, jak w motywie „Delikatny” */
.footer-social__icons .social-icon-link,
.footer-social__icons.social-icon-links .social-icon-link,
.footer-social-block .social-icon-link,
.site-footer--compact .footer-social-block .social-icon-link,
.footer-social__icons .social-icon-link:hover,
.footer-social__icons .social-icon-link:focus-visible,
.footer-social__icons.social-icon-links .social-icon-link:hover,
.footer-social__icons.social-icon-links .social-icon-link:focus-visible,
.footer-social-block .social-icon-link:hover,
.footer-social-block .social-icon-link:focus-visible,
.site-footer--compact .footer-social-block .social-icon-link:hover,
.site-footer--compact .footer-social-block .social-icon-link:focus-visible{
    background:#f7edf2 !important;
}


/* v855: posty — mniejsze typografie + social media nad ikonami */
.posts-directory .posts-sidebar-nav h2{font-size:24px !important;}
.posts-directory .posts-sidebar-nav button{font-size:10.5px !important;}
.posts-directory .posts-topic-card h2{font-size:24px !important;line-height:1.08 !important;}
.posts-directory .posts-offer-card h2{font-size:19px !important;line-height:1.1 !important;}
.posts-directory .posts-topic-card p,
.posts-directory .posts-offer-card p{font-size:11px !important;line-height:1.55 !important;}
.posts-directory .posts-topic-card .button,
.posts-directory .posts-offer-card .button{min-height:42px !important;font-size:13px !important;}
.posts-directory .post-feed-card__copy h3{font-size:clamp(28px, 2.8vw, 38px) !important;}
.posts-directory .post-feed-card__copy p{font-size:clamp(16px, 1.2vw, 20px) !important;line-height:1.62 !important;}
.posts-directory .posts-social-card{
    display:grid !important;
    grid-template-columns:1fr !important;
    align-items:flex-start !important;
    justify-content:flex-start !important;
    gap:8px !important;
    padding:13px 16px !important;
}
.posts-directory .posts-social-card h2,
.posts-directory .posts-social-card > h2{
    margin:0 !important;
    font-size:16px !important;
    line-height:1.18 !important;
}
.posts-directory .posts-social-card__icons{
    display:flex !important;
    flex-wrap:nowrap !important;
    justify-content:flex-start !important;
    align-items:center !important;
    gap:6px !important;
    max-width:100% !important;
}
.posts-directory .posts-social-card__icons .social-icon-link{
    width:30px !important;
    height:30px !important;
    min-width:30px !important;
    min-height:30px !important;
}
.posts-directory .posts-social-card__icons .social-icon-link svg{
    width:14px !important;
    height:14px !important;
}
@media (max-width: 700px){
    .posts-directory .posts-topic-card h2{font-size:22px !important;}
    .posts-directory .posts-offer-card h2{font-size:18px !important;}
    .posts-directory .posts-topic-card p,
    .posts-directory .posts-offer-card p{font-size:10.5px !important;line-height:1.52 !important;}
    .posts-directory .posts-social-card h2,
    .posts-directory .posts-social-card > h2{font-size:15px !important;}
}
@media (max-width: 430px){
    .posts-directory .posts-sidebar-nav h2{font-size:22px !important;}
    .posts-directory .posts-topic-card,
    .posts-directory .posts-offer-card{padding:20px 18px !important;}
    .posts-directory .posts-topic-card h2{font-size:20px !important;}
    .posts-directory .posts-offer-card h2{font-size:17px !important;}
    .posts-directory .posts-topic-card p,
    .posts-directory .posts-offer-card p{font-size:10px !important;line-height:1.5 !important;}
    .posts-directory .posts-topic-card .button,
    .posts-directory .posts-offer-card .button{min-height:40px !important;font-size:12.5px !important;}
    .posts-directory .posts-social-card{gap:7px !important;padding:12px 14px !important;}
    .posts-directory .posts-social-card h2,
    .posts-directory .posts-social-card > h2{font-size:14px !important;}
    .posts-directory .posts-social-card__icons{gap:5px !important;}
    .posts-directory .posts-social-card__icons .social-icon-link{width:29px !important;height:29px !important;min-width:29px !important;min-height:29px !important;}
    .posts-directory .posts-social-card__icons .social-icon-link svg{width:13px !important;height:13px !important;}
}


/* v859: stopka — delikatnie mniejsze koła i ikony social media */
.footer-social__icons.social-icon-links .social-icon-link,
.footer-social__icons .social-icon-link,
.footer-social-block .social-icon-link,
.site-footer--compact .footer-social-block .social-icon-link{
    width:28px !important;
    height:28px !important;
    min-width:28px !important;
    min-height:28px !important;
}
.footer-social__icons.social-icon-links .social-icon-link svg,
.footer-social__icons .social-icon-link svg,
.footer-social-block .social-icon-link svg,
.site-footer--compact .footer-social-block .social-icon-link svg{
    width:14px !important;
    height:14px !important;
}
@media (max-width:430px){
    .footer-social__icons.social-icon-links .social-icon-link,
    .footer-social__icons .social-icon-link,
    .footer-social-block .social-icon-link,
    .site-footer--compact .footer-social-block .social-icon-link{
        width:27px !important;
        height:27px !important;
        min-width:27px !important;
        min-height:27px !important;
    }
    .footer-social__icons.social-icon-links .social-icon-link svg,
    .footer-social__icons .social-icon-link svg,
    .footer-social-block .social-icon-link svg,
    .site-footer--compact .footer-social-block .social-icon-link svg{
        width:13px !important;
        height:13px !important;
    }
}


/* v860: posty — przywrócona większa typografia, mniej pustego miejsca, ciaśniejsze media */
.posts-directory .posts-sidebar--left .posts-sidebar__panel{
    grid-template-rows:auto auto auto !important;
}
.posts-directory .posts-topic-card,
.posts-directory .posts-offer-card{
    padding:22px 20px 18px !important;
}
.posts-directory .posts-topic-card h2{
    font-size:26px !important;
    line-height:1.08 !important;
    margin:4px 0 10px !important;
}
.posts-directory .posts-offer-card h2{
    font-size:22px !important;
    line-height:1.1 !important;
    margin:4px 0 10px !important;
}
.posts-directory .posts-topic-card p,
.posts-directory .posts-offer-card p{
    font-size:12.5px !important;
    line-height:1.58 !important;
    margin:0 0 12px !important;
}
.posts-directory .posts-topic-card .button,
.posts-directory .posts-offer-card .button{
    margin-top:14px !important;
    min-height:44px !important;
    font-size:13.5px !important;
}
.posts-directory .posts-social-card{
    gap:6px !important;
    padding:8px 16px 12px !important;
}
.posts-directory .posts-social-card h2,
.posts-directory .posts-social-card > h2{
    font-size:15px !important;
    line-height:1.15 !important;
}
@media (max-width: 700px){
    .posts-directory .posts-topic-card,
    .posts-directory .posts-offer-card{
        padding:20px 18px 16px !important;
    }
    .posts-directory .posts-topic-card h2{font-size:24px !important;}
    .posts-directory .posts-offer-card h2{font-size:20px !important;}
    .posts-directory .posts-topic-card p,
    .posts-directory .posts-offer-card p{font-size:12px !important;line-height:1.56 !important;}
    .posts-directory .posts-topic-card .button,
    .posts-directory .posts-offer-card .button{margin-top:12px !important;min-height:43px !important;font-size:13px !important;}
    .posts-directory .posts-social-card{padding:7px 14px 11px !important;gap:5px !important;}
}
@media (max-width: 430px){
    .posts-directory .posts-topic-card,
    .posts-directory .posts-offer-card{padding:18px 16px 15px !important;}
    .posts-directory .posts-topic-card h2{font-size:22px !important;}
    .posts-directory .posts-offer-card h2{font-size:18px !important;}
    .posts-directory .posts-topic-card p,
    .posts-directory .posts-offer-card p{font-size:11.5px !important;line-height:1.54 !important;}
    .posts-directory .posts-topic-card .button,
    .posts-directory .posts-offer-card .button{margin-top:10px !important;min-height:42px !important;font-size:12.5px !important;}
    .posts-directory .posts-social-card{padding:6px 12px 10px !important;gap:4px !important;}
    .posts-directory .posts-social-card h2,
    .posts-directory .posts-social-card > h2{font-size:14px !important;}
}


/* v861: posty — nieco większy nagłówek Media społecznościowe */
.posts-directory .posts-social-card h2,
.posts-directory .posts-social-card > h2{
    font-size:17px !important;
    line-height:1.16 !important;
}
@media (max-width: 700px){
    .posts-directory .posts-social-card h2,
    .posts-directory .posts-social-card > h2{
        font-size:16px !important;
    }
}
@media (max-width: 430px){
    .posts-directory .posts-social-card h2,
    .posts-directory .posts-social-card > h2{
        font-size:15.5px !important;
        line-height:1.15 !important;
    }
}


/* v862: sidebar postów ma szczelnie wypełniać dostępną wysokość */
@media (min-width: 980px){
    .posts-directory .posts-sidebar--left{
        height:calc(100dvh - var(--runtime-header-height) - 48px) !important;
        min-height:620px !important;
        max-height:none !important;
    }
    .posts-directory .posts-sidebar--left .posts-sidebar__panel{
        height:100% !important;
        display:grid !important;
        grid-template-rows:minmax(0,1fr) minmax(0,1fr) auto !important;
        align-content:stretch !important;
    }
    .posts-directory .posts-sidebar--left .posts-topic-card,
    .posts-directory .posts-sidebar--left .posts-offer-card{
        min-height:0 !important;
        height:100% !important;
        display:flex !important;
        flex-direction:column !important;
        justify-content:flex-start !important;
    }
    .posts-directory .posts-sidebar--left .posts-topic-card p,
    .posts-directory .posts-sidebar--left .posts-offer-card p{
        margin:0 0 10px !important;
    }
    .posts-directory .posts-sidebar--left .posts-topic-card .button,
    .posts-directory .posts-sidebar--left .posts-offer-card .button{
        margin-top:auto !important;
    }
    .posts-directory .posts-sidebar--left .posts-social-card{
        margin-top:auto !important;
    }
}


/* v863: usuń puste przestrzenie w kartach sidebara postów na węższych widokach */
@media (max-width: 979px){
    .posts-directory .posts-sidebar--left{
        height:auto !important;
        min-height:0 !important;
        max-height:none !important;
    }
    .posts-directory .posts-sidebar--left .posts-sidebar__panel{
        height:auto !important;
        display:block !important;
        grid-template-rows:none !important;
    }
    .posts-directory .posts-sidebar--left .posts-topic-card,
    .posts-directory .posts-sidebar--left .posts-offer-card,
    .posts-directory .posts-sidebar--left .posts-social-card{
        height:auto !important;
        min-height:0 !important;
    }
    .posts-directory .posts-sidebar--left .posts-topic-card .button,
    .posts-directory .posts-sidebar--left .posts-offer-card .button{
        margin-top:12px !important;
    }
}

/* v863: desktop — sidebar dalej wypełnia wysokość, ale bez pustki między tekstem a przyciskiem */
@media (min-width: 980px){
    .posts-directory .posts-sidebar--left{
        height:calc(100dvh - var(--runtime-header-height) - 48px) !important;
        min-height:620px !important;
        max-height:none !important;
    }
    .posts-directory .posts-sidebar--left .posts-sidebar__panel{
        height:100% !important;
        display:grid !important;
        grid-template-rows:auto auto 1fr !important;
        align-content:start !important;
    }
    .posts-directory .posts-sidebar--left .posts-topic-card,
    .posts-directory .posts-sidebar--left .posts-offer-card{
        height:auto !important;
        min-height:0 !important;
        display:block !important;
    }
    .posts-directory .posts-sidebar--left .posts-topic-card .button,
    .posts-directory .posts-sidebar--left .posts-offer-card .button{
        margin-top:12px !important;
    }
    .posts-directory .posts-sidebar--left .posts-social-card{
        align-self:end !important;
    }
}


/* v864: sidebar postów — wypełnienie przestrzeni przez większą typografię, nie przez środkowanie */
.posts-directory .posts-sidebar--left .posts-topic-card,
.posts-directory .posts-sidebar--left .posts-offer-card{
    justify-content:flex-start !important;
    align-items:stretch !important;
}
.posts-directory .posts-sidebar--left .posts-topic-card h2{
    font-size:28px !important;
    line-height:1.06 !important;
    margin:4px 0 12px !important;
}
.posts-directory .posts-sidebar--left .posts-offer-card h2{
    font-size:24px !important;
    line-height:1.08 !important;
    margin:4px 0 12px !important;
}
.posts-directory .posts-sidebar--left .posts-topic-card p{
    font-size:13.5px !important;
    line-height:1.64 !important;
    margin:0 0 14px !important;
}
.posts-directory .posts-sidebar--left .posts-offer-card p{
    font-size:13px !important;
    line-height:1.62 !important;
    margin:0 0 14px !important;
}
.posts-directory .posts-sidebar--left .posts-topic-card .button,
.posts-directory .posts-sidebar--left .posts-offer-card .button{
    min-height:46px !important;
    font-size:13.5px !important;
    margin-top:14px !important;
}
@media (max-width: 979px){
    .posts-directory .posts-sidebar--left .posts-topic-card h2{font-size:29px !important;}
    .posts-directory .posts-sidebar--left .posts-offer-card h2{font-size:25px !important;}
    .posts-directory .posts-sidebar--left .posts-topic-card p{font-size:14px !important;line-height:1.66 !important;}
    .posts-directory .posts-sidebar--left .posts-offer-card p{font-size:13.5px !important;line-height:1.64 !important;}
}
@media (max-width: 700px){
    .posts-directory .posts-sidebar--left .posts-topic-card h2{font-size:27px !important;}
    .posts-directory .posts-sidebar--left .posts-offer-card h2{font-size:23px !important;}
    .posts-directory .posts-sidebar--left .posts-topic-card p{font-size:13.5px !important;line-height:1.64 !important;}
    .posts-directory .posts-sidebar--left .posts-offer-card p{font-size:13px !important;line-height:1.62 !important;}
}
@media (max-width: 430px){
    .posts-directory .posts-sidebar--left .posts-topic-card h2{font-size:25px !important;}
    .posts-directory .posts-sidebar--left .posts-offer-card h2{font-size:21px !important;}
    .posts-directory .posts-sidebar--left .posts-topic-card p{font-size:13px !important;line-height:1.62 !important;}
    .posts-directory .posts-sidebar--left .posts-offer-card p{font-size:12.5px !important;line-height:1.6 !important;}
}


/* v865: sidebar postów — górne 2 sekcje wypełniają wysokość, sekcja social bez pustego bloku */
@media (min-width: 980px){
    .posts-directory .posts-sidebar--left{
        height:calc(100dvh - var(--runtime-header-height) - 48px) !important;
        min-height:650px !important;
        max-height:none !important;
    }
    .posts-directory .posts-sidebar--left .posts-sidebar__panel{
        height:100% !important;
        display:grid !important;
        grid-template-rows:minmax(0,1fr) minmax(0,1fr) auto !important;
        align-content:stretch !important;
    }
    .posts-directory .posts-sidebar--left .posts-topic-card,
    .posts-directory .posts-sidebar--left .posts-offer-card{
        min-height:0 !important;
        height:100% !important;
        display:flex !important;
        flex-direction:column !important;
        justify-content:flex-start !important;
        padding:24px 20px 20px !important;
    }
    .posts-directory .posts-sidebar--left .posts-topic-card h2{
        font-size:29px !important;
        line-height:1.05 !important;
    }
    .posts-directory .posts-sidebar--left .posts-offer-card h2{
        font-size:25px !important;
        line-height:1.08 !important;
    }
    .posts-directory .posts-sidebar--left .posts-topic-card p{
        font-size:14px !important;
        line-height:1.66 !important;
        margin:0 0 16px !important;
    }
    .posts-directory .posts-sidebar--left .posts-offer-card p{
        font-size:13.5px !important;
        line-height:1.64 !important;
        margin:0 0 16px !important;
    }
    .posts-directory .posts-sidebar--left .posts-topic-card .button,
    .posts-directory .posts-sidebar--left .posts-offer-card .button{
        margin-top:auto !important;
        min-height:46px !important;
        font-size:13.5px !important;
    }
    .posts-directory .posts-sidebar--left .posts-social-card{
        height:auto !important;
        min-height:0 !important;
        align-self:start !important;
        padding:10px 14px 12px !important;
        gap:6px !important;
    }
}

@media (max-width: 979px){
    .posts-directory .posts-sidebar--left .posts-sidebar__panel{
        display:block !important;
        height:auto !important;
    }
    .posts-directory .posts-sidebar--left .posts-topic-card,
    .posts-directory .posts-sidebar--left .posts-offer-card,
    .posts-directory .posts-sidebar--left .posts-social-card{
        height:auto !important;
        min-height:0 !important;
    }
    .posts-directory .posts-sidebar--left .posts-topic-card h2{font-size:28px !important;line-height:1.06 !important;}
    .posts-directory .posts-sidebar--left .posts-offer-card h2{font-size:24px !important;line-height:1.08 !important;}
    .posts-directory .posts-sidebar--left .posts-topic-card p{font-size:14px !important;line-height:1.66 !important;}
    .posts-directory .posts-sidebar--left .posts-offer-card p{font-size:13.5px !important;line-height:1.64 !important;}
}
@media (max-width: 430px){
    .posts-directory .posts-sidebar--left .posts-topic-card h2{font-size:26px !important;}
    .posts-directory .posts-sidebar--left .posts-offer-card h2{font-size:22px !important;}
    .posts-directory .posts-sidebar--left .posts-topic-card p{font-size:13px !important;line-height:1.62 !important;}
    .posts-directory .posts-sidebar--left .posts-offer-card p{font-size:12.5px !important;line-height:1.6 !important;}
    .posts-directory .posts-sidebar--left .posts-social-card{padding:8px 12px 10px !important;}
}


/* v866: sidebar postów — jeszcze trochę większa typografia */
@media (min-width: 980px){
    .posts-directory .posts-sidebar--left .posts-topic-card h2{font-size:31px !important;line-height:1.04 !important;}
    .posts-directory .posts-sidebar--left .posts-offer-card h2{font-size:26px !important;line-height:1.07 !important;}
    .posts-directory .posts-sidebar--left .posts-topic-card p{font-size:14.5px !important;line-height:1.68 !important;}
    .posts-directory .posts-sidebar--left .posts-offer-card p{font-size:14px !important;line-height:1.66 !important;}
    .posts-directory .posts-sidebar--left .posts-topic-card .button,
    .posts-directory .posts-sidebar--left .posts-offer-card .button{min-height:47px !important;font-size:14px !important;}
}
@media (max-width: 979px){
    .posts-directory .posts-sidebar--left .posts-topic-card h2{font-size:30px !important;line-height:1.05 !important;}
    .posts-directory .posts-sidebar--left .posts-offer-card h2{font-size:25px !important;line-height:1.08 !important;}
    .posts-directory .posts-sidebar--left .posts-topic-card p{font-size:14.5px !important;line-height:1.67 !important;}
    .posts-directory .posts-sidebar--left .posts-offer-card p{font-size:14px !important;line-height:1.65 !important;}
}
@media (max-width: 430px){
    .posts-directory .posts-sidebar--left .posts-topic-card h2{font-size:28px !important;}
    .posts-directory .posts-sidebar--left .posts-offer-card h2{font-size:23px !important;}
    .posts-directory .posts-sidebar--left .posts-topic-card p{font-size:13.5px !important;line-height:1.64 !important;}
    .posts-directory .posts-sidebar--left .posts-offer-card p{font-size:13px !important;line-height:1.62 !important;}
    .posts-directory .posts-sidebar--left .posts-topic-card .button,
    .posts-directory .posts-sidebar--left .posts-offer-card .button{font-size:13px !important;}
}


/* v867: większy nagłówek Media społecznościowe + bliżej górnej krawędzi */
.posts-directory .posts-social-card{
    padding-top:6px !important;
}
.posts-directory .posts-social-card h2,
.posts-directory .posts-social-card > h2{
    font-size:19px !important;
    line-height:1.14 !important;
}
@media (max-width: 700px){
    .posts-directory .posts-social-card{
        padding-top:5px !important;
    }
    .posts-directory .posts-social-card h2,
    .posts-directory .posts-social-card > h2{
        font-size:18px !important;
    }
}
@media (max-width: 430px){
    .posts-directory .posts-social-card{
        padding-top:4px !important;
    }
    .posts-directory .posts-social-card h2,
    .posts-directory .posts-social-card > h2{
        font-size:17px !important;
        line-height:1.13 !important;
    }
}


/* v868: jednolity górny odstęp we wszystkich sekcjach lewego sidebara postów */
.posts-directory .posts-sidebar--left .posts-topic-card,
.posts-directory .posts-sidebar--left .posts-offer-card,
.posts-directory .posts-sidebar--left .posts-social-card{
    padding-top:18px !important;
}
@media (max-width: 700px){
    .posts-directory .posts-sidebar--left .posts-topic-card,
    .posts-directory .posts-sidebar--left .posts-offer-card,
    .posts-directory .posts-sidebar--left .posts-social-card{
        padding-top:16px !important;
    }
}
@media (max-width: 430px){
    .posts-directory .posts-sidebar--left .posts-topic-card,
    .posts-directory .posts-sidebar--left .posts-offer-card,
    .posts-directory .posts-sidebar--left .posts-social-card{
        padding-top:14px !important;
    }
}


/* v869: naprawa faktycznej przyczyny nierównego odstępu — stary grid gap 16px między sekcjami */
.posts-directory .posts-sidebar--left .posts-sidebar__panel{
    gap:0 !important;
    row-gap:0 !important;
    column-gap:0 !important;
}


/* v870: social media trochę większe; równe marginesy ikon; dodatkowa wysokość zabrana z górnej karty */
.posts-directory .posts-sidebar--left .posts-social-card{
    padding-right:14px !important;
    padding-bottom:14px !important;
    padding-left:14px !important;
}
.posts-directory .posts-sidebar--left .posts-social-card__icons{
    width:100% !important;
    display:grid !important;
    grid-template-columns:repeat(6,34px) !important;
    justify-content:space-between !important;
    align-items:center !important;
    gap:0 !important;
}
.posts-directory .posts-sidebar--left .posts-social-card__icons .social-icon-link{
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    min-height:34px !important;
}
.posts-directory .posts-sidebar--left .posts-social-card__icons .social-icon-link svg{
    width:16px !important;
    height:16px !important;
}
@media (min-width:980px){
    .posts-directory .posts-sidebar--left .posts-sidebar__panel{
        grid-template-rows:minmax(0,.96fr) minmax(0,1fr) auto !important;
    }
}
@media (max-width:430px){
    .posts-directory .posts-sidebar--left .posts-social-card__icons{
        grid-template-columns:repeat(6,32px) !important;
    }
    .posts-directory .posts-sidebar--left .posts-social-card__icons .social-icon-link{
        width:32px !important;
        height:32px !important;
        min-width:32px !important;
        min-height:32px !important;
    }
    .posts-directory .posts-sidebar--left .posts-social-card__icons .social-icon-link svg{
        width:15px !important;
        height:15px !important;
    }
}
.patient-chat-message__attachments a.patient-chat-file-attachment{cursor:pointer;display:flex;flex-direction:column;gap:3px;padding:11px 13px;border:1px solid var(--line);border-radius:12px;background:var(--surface,#fff);text-decoration:none;color:inherit;min-width:180px;}
.patient-chat-file-attachment strong{font-size:12px;line-height:1.35;overflow-wrap:anywhere;}
.patient-chat-file-attachment small{font-size:10px;color:var(--muted);}
