/* ═══════════════════════════════════════════════════════
   PORTAL KONSULTACJI — CSS v6  ·  matches design mockups
   Primary: #1565C0 · Font: Inter/Helvetica
═══════════════════════════════════════════════════════ */
:root {
  --blue:      #1565C0;
  --blue-dk:   #0D47A1;
  --blue-lt:   #E3F2FD;
  --blue-mid:  #BBDEFB;
  --blue-hero: linear-gradient(135deg,#1565C0 0%,#0D47A1 100%);
  --purple:    #6C3FC5;
  --purp-dk:   #4527A0;
  --dark:      #1A2332;
  --gr-dark:   #374151;
  --gr:        #6B7280;
  --gr-mid:    #9CA3AF;
  --gr-lt:     #E5E7EB;
  --gr-bg:     #F9FAFB;
  --white:     #FFFFFF;
  --green:     #16A34A;
  --green-bg:  #DCFCE7;
  --green-lt:  #F0FDF4;
  --amber:     #D97706;
  --amber-bg:  #FEF3C7;
  --red:       #DC2626;
  --red-bg:    #FEE2E2;
  --orange:    #EA580C;
  --orange-bg: #FFF7ED;
  --font: -apple-system,BlinkMacSystemFont,'Segoe UI','Helvetica Neue',Helvetica,Arial,sans-serif;
  --r: 8px;
  --r-lg: 12px;
  --sh: 0 1px 3px rgba(0,0,0,.08),0 1px 2px rgba(0,0,0,.05);
  --shm: 0 4px 16px rgba(0,0,0,.08);
  --shl: 0 10px 40px rgba(0,0,0,.12);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth}
body{font-family:var(--font);color:var(--dark);background:var(--white);line-height:1.6;font-size:.9375rem}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue);text-decoration:none}
a:hover{color:var(--blue-dk)}
ul,ol{list-style:none}
button{font-family:var(--font);cursor:pointer}
:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.skip-link{position:absolute;top:-999px;padding:8px 20px;background:var(--blue);color:#fff;z-index:9999}
.skip-link:focus{top:0}

/* ── LAYOUT ─────────────────────────────────────────── */
.container{max-width:1200px;margin:0 auto;padding:0 24px}
@media(max-width:768px){.container{padding:0 16px}}

/* ── TYPE ───────────────────────────────────────────── */
h1{font-size:clamp(1.5rem,3.5vw,2.25rem);font-weight:700;line-height:1.2;letter-spacing:-.02em}
h2{font-size:clamp(1.1rem,2.5vw,1.4rem);font-weight:700;line-height:1.25}
h3{font-size:1rem;font-weight:600;line-height:1.35}
h4{font-size:.875rem;font-weight:600}
p{margin-bottom:.75rem}
p:last-child{margin-bottom:0}
.text-sm{font-size:.85rem}
.text-xs{font-size:.78rem}
.text-muted{color:var(--gr)}
.font-bold{font-weight:700}
.font-semibold{font-weight:600}

/* ── FA ICONS ───────────────────────────────────────── */
.fa,.fa-solid,.fa-regular,.fa-brands{display:inline-flex;align-items:center;justify-content:center;vertical-align:-.1em;width:1em}

/* ── BUTTONS ────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:8px 15px;font-size:.875rem;font-weight:600;border:1.5px solid transparent;border-radius:var(--r);transition:all .15s;white-space:nowrap;text-decoration:none;line-height:1.25;cursor:pointer}
.btn-primary{background:var(--blue);color:#fff;border-color:var(--blue)}
.btn-primary:hover{background:var(--blue-dk);border-color:var(--blue-dk);color:#fff}
.btn-outline{background:transparent;color:var(--blue);border-color:var(--blue)}
.btn-outline:hover{background:var(--blue);color:#fff}
.btn-white{background:#fff;color:var(--blue);border-color:rgba(255,255,255,.4)}
.btn-white:hover{background:var(--blue-lt)}
.btn-ghost{background:transparent;color:var(--gr-dark);border-color:var(--gr-lt)}
.btn-ghost:hover{background:#fff;border-color:var(--blue);color:var(--blue)}
.btn-danger{background:var(--red);color:#fff;border-color:var(--red)}
.btn-danger:hover{background:#B91C1C}
.btn-success{background:var(--green);color:#fff;border-color:var(--green)}
.btn-success:hover{background:#15803D}
.btn-warning{background:var(--amber);color:#fff;border-color:var(--amber)}
.btn-sm{padding:8px 15px;font-size:.8125rem}
.btn-lg{padding:11px 28px;font-size:1rem}
.btn-full{width:100%}
.btn[disabled]{opacity:.45;cursor:not-allowed;pointer-events:none}

/* ── HEADER ─────────────────────────────────────────── */
.site-header{background:#fff;border-bottom:1px solid var(--gr-lt);position:sticky;top:0;z-index:200;box-shadow:var(--sh)}
.header-inner{display:flex;align-items:center;gap:12px;height:85px}
.site-logo{display:flex;align-items:center;gap:8px;flex-shrink:0;text-decoration:none}
.logo-img{height:auto;width:250px;object-fit:contain}
.logo-text{font-size:.95rem;font-weight:700;color:var(--blue);line-height:1.15}
.logo-text span{display:block;font-size:.65rem;font-weight:400;color:var(--gr);line-height:1}
.main-nav{display:flex;align-items:center;gap:10px;margin-left:auto;flex-wrap:nowrap;overflow:hidden}
.nav-link{font-size:.78rem;font-weight:500;color:var(--gr-dark);padding:8px 15px;border-radius:5px;transition:all .15s;white-space:nowrap}
.nav-link:hover,.nav-link.active{color:var(--blue);background:var(--blue-lt)}
.nav-link-cta{background:var(--blue);color:#fff!important;padding:8px 15px;border-radius:5px}
.nav-link-cta:hover{background:var(--blue-dk)!important;color:#fff!important}
.header-actions{display:flex;align-items:center;gap:6px;margin-left:8px;flex-shrink:0}
.user-menu-wrap{position:relative}
.user-menu-btn{display:flex;align-items:center;gap:7px;padding:5px 10px;border:1px solid var(--gr-lt);border-radius:var(--r);background:#fff;font-size:.8rem;color:var(--dark);transition:border-color .15s;font-weight:500}
.user-menu-btn:hover{border-color:var(--blue)}
.user-avatar{width:26px;height:26px;border-radius:50%;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;flex-shrink:0}
.user-dropdown{display:none;position:absolute;right:0;top:calc(100% + 4px);min-width:200px;background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r);box-shadow:var(--shl);z-index:300;overflow:hidden}
.user-dropdown.is-open{display:block}
.dropdown-item{display:flex;align-items:center;gap:9px;padding:9px 14px;font-size:.85rem;color:var(--dark);border:none;background:none;width:100%;text-align:left;transition:background .12s;cursor:pointer;text-decoration:none}
.dropdown-item:hover{background:var(--gr-bg)}
.dropdown-item.danger{color:var(--red)}
.dropdown-divider{border:none;border-top:1px solid var(--gr-lt);margin:3px 0}
.badge{display:inline-flex;align-items:center;padding:2px 7px;border-radius:100px;font-size:.65rem;font-weight:700;margin-left:5px;background:var(--red);color:#fff;min-width:18px;justify-content:center}
.mobile-menu-btn{display:none;flex-direction:column;gap:5px;background:none;border:none;padding:8px}
.mobile-menu-btn span{width:20px;height:2px;background:var(--dark);display:block}

/* ── VERSION BUTTONS ─────────────────────────────────── */
.ver-btn{padding:4px 10px;border-radius:4px;font-size:.72rem;font-weight:700;border:1px solid var(--gr-lt);color:var(--gr);background:#fff;cursor:pointer;transition:all .15s}
.ver-btn.active{background:var(--blue);color:#fff;border-color:var(--blue)}

/* ── FLASH ───────────────────────────────────────────── */
.flash{display:flex;justify-content:space-between;align-items:center;padding:10px 20px;font-size:.875rem;gap:12px}
.flash-success{background:var(--green-bg);color:#166534;border-left:3px solid var(--green)}
.flash-error{background:var(--red-bg);color:#991B1B;border-left:3px solid var(--red)}
.flash-warning{background:var(--amber-bg);color:#92400E;border-left:3px solid var(--amber)}
.flash-info{background:var(--blue-lt);color:var(--blue-dk);border-left:3px solid var(--blue)}
.flash button{background:none;border:none;font-size:1.1rem;opacity:.5;padding:0;cursor:pointer}

/* ── PAGE HERO (blue) ────────────────────────────────── */
.page-hero{background:var(--blue-hero);color:#fff;padding:32px 0}
.page-hero h1{color:#fff;font-size:clamp(1.25rem,2.5vw,1.75rem);font-weight:700}
.page-hero p,.page-hero-sub{color:rgba(255,255,255,.8);font-size:.875rem;margin-top:6px}
.page-hero-stats{display:flex;gap:32px;margin-top:18px;flex-wrap:wrap}
.ph-stat{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px 20px;background:rgba(255,255,255,.25);border:1px solid #fff;border-radius:10px;min-width:120px}
.ph-stat .num{font-size:1.6rem;font-weight:800;color:#fff;display:block;line-height:1;text-align:center}
.ph-stat .lbl{font-size:.72rem;color:rgba(255,255,255,.85);text-transform:uppercase;letter-spacing:.05em;margin-top:4px;text-align:center}


/* ── ADMIN HERO (purple) ─────────────────────────────── */
.admin-hero{background:linear-gradient(135deg,var(--purple) 0%,var(--purp-dk) 100%);color:#fff}
.admin-hero h1,.admin-hero p{color:rgba(255,255,255,.95)}

/* ── HOME HERO ───────────────────────────────────────── */
.hero{padding:56px 0 48px;background:#fff}
.hero-inner{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.hero-text{}
.hero-eyebrow{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--blue);background:var(--blue-lt);padding:4px 12px;border-radius:100px;margin-bottom:14px}
.hero h1{margin-bottom:14px}
.hero-sub{font-size:.9375rem;color:var(--gr);margin-bottom:24px;line-height:1.7}
.hero-cta{display:flex;gap:10px;flex-wrap:wrap}
.hero-photo{border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shl);aspect-ratio:4/3;background:linear-gradient(135deg,var(--blue-lt),var(--blue-mid))}
.hero-photo img{width:100%;height:100%;object-fit:cover}
/* Stats row */
.stats-row{background:#fff;border-top:1px solid var(--gr-lt);border-bottom:1px solid var(--gr-lt)}
.stats-inner{display:flex}
.stat-box{flex:1;padding:18px 24px;border-right:1px solid var(--gr-lt);text-align:center}
.stat-box:last-child{border-right:none}
.stat-num{display:block;font-size:1.75rem;font-weight:800;color:var(--blue);line-height:1}
.stat-lbl{display:block;font-size:.75rem;color:var(--gr);margin-top:3px}

/* ── SECTIONS ────────────────────────────────────────── */
.section{padding:48px 0}
.section-gray{background:#fff;padding:48px 0}
.section-padded{padding:28px 0 56px}
.section-head{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:22px;gap:16px;flex-wrap:wrap}
.section-title{font-size:clamp(1.05rem,2vw,1.25rem);font-weight:700;color:var(--dark)}
.section-sub{font-size:.85rem;color:var(--gr);margin-top:3px}
.page-header{background:var(--blue-hero);padding:24px 0;color:#fff}
.page-header h1{color:#fff;font-size:1.5rem}

/* ── CARDS ───────────────────────────────────────────── */
.cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:20px}
.card{background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r-lg);overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .15s,border-color .15s}
.card:hover{border-color:#93C5FD;box-shadow:var(--shm)}
.card-cover{aspect-ratio:16/9;overflow:hidden;background:var(--gr-bg);position:relative}
.card-cover img{width:100%;height:100%;object-fit:cover;transition:transform .3s}
.card:hover .card-cover img{transform:scale(1.03)}
.card-cover-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:2rem;color:var(--gr-lt);background:linear-gradient(135deg,var(--blue-lt),var(--blue-mid))}
.card-body{padding:16px;flex:1}
.card-tags{display:flex;gap:5px;flex-wrap:wrap;margin-bottom:8px;align-items:center}
.card-title{font-size:.9375rem;font-weight:700;line-height:1.35;margin-bottom:6px;color:var(--dark)}
.card-title a{color:inherit}
.card-title a:hover{color:var(--blue)}
.card-excerpt{font-size:.825rem;color:var(--gr);line-height:1.55;margin-bottom:8px}
.card-meta{display:flex;gap:12px;flex-wrap:wrap;font-size:.775rem;color:var(--gr-mid);align-items:center}
.card-footer{padding:12px 16px;border-top:1px solid var(--gr-lt)}
/* Consultation card list */
.consultations-grid{display:grid;gap:12px}
.consultation-card{background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r-lg);padding:18px;display:flex;gap:16px;align-items:flex-start;transition:all .15s}
.consultation-card:hover{border-color:#93C5FD;box-shadow:var(--shm)}
.consultation-card--ended{opacity:.82}

/* ── STATUS BADGES ───────────────────────────────────── */
.tag{display:inline-flex;align-items:center;padding:3px 9px;background:var(--blue-lt);color:var(--blue-dk);border-radius:100px;font-size:.72rem;font-weight:600;text-decoration:none;transition:all .15s}
.tag:hover{background:var(--blue);color:#fff}
.tag-gray{background:var(--gr-bg);color:var(--gr)}
.status-active{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:100px;font-size:.72rem;font-weight:700;background:var(--green-bg);color:#15803D}
.status-active::before{content:'';width:6px;height:6px;background:#16A34A;border-radius:50%;flex-shrink:0}
.status-ended{display:inline-block;padding:3px 9px;border-radius:100px;font-size:.72rem;font-weight:700;background:var(--gr-bg);color:var(--gr)}
.status-draft{display:inline-block;padding:3px 9px;border-radius:100px;font-size:.72rem;font-weight:700;background:var(--gr-bg);color:var(--gr-dark)}
.status-pending{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:100px;font-size:.72rem;font-weight:700;background:var(--orange-bg);color:var(--orange)}
.status-pending_review{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:100px;font-size:.72rem;font-weight:700;background:var(--amber-bg);color:var(--amber)}
.status-hidden{display:inline-block;padding:3px 9px;border-radius:100px;font-size:.72rem;font-weight:700;background:var(--red-bg);color:var(--red)}
.status-badge{display:inline-block;padding:3px 9px;border-radius:100px;font-size:.72rem;font-weight:700}

/* ── FORMS ───────────────────────────────────────────── */
.form-group{margin-bottom:18px}
.form-label,.form-group>label{display:block;font-size:.825rem;font-weight:600;color:var(--gr-dark);margin-bottom:5px}
.form-hint{font-size:.775rem;color:var(--gr-mid);margin-top:4px}
.form-input,.form-textarea,.form-select{width:100%;padding:9px 13px;border:1.5px solid var(--gr-lt);border-radius:var(--r);font-family:var(--font);font-size:.9rem;background:#fff;color:var(--dark);transition:border-color .15s}
.form-textarea{resize:vertical;min-height:80px;line-height:1.55}
.form-input:focus,.form-textarea:focus,.form-select:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(21,101,192,.1)}
.form-input.is-invalid,.form-textarea.is-invalid{border-color:var(--red)}
.field-error{display:block;font-size:.78rem;color:var(--red);margin-top:4px}
.form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.radio-label,.checkbox-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.9rem;margin-bottom:7px}
.radio-label input,.checkbox-label input{accent-color:var(--blue);width:15px;height:15px}
.required{color:var(--red);margin-left:2px}
.questions-form{display:flex;flex-direction:column;gap:24px}
.question-block{background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r);padding:20px}
.options-group{display:flex;flex-direction:column;gap:8px}

/* ── FILTERS ─────────────────────────────────────────── */
.filters-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:20px}
.filter-input,.filter-select{padding:8px 13px;border:1.5px solid var(--gr-lt);border-radius:var(--r);font-family:var(--font);font-size:.875rem;background:#fff;color:var(--dark);transition:border-color .15s}
.filter-input:focus,.filter-select:focus{outline:none;border-color:var(--blue)}
.filter-input{flex:1;min-width:200px}
.cons-layout{display:grid;grid-template-columns:240px 1fr;gap:20px;align-items:start}
.filters-sidebar{background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r-lg);padding:18px;position:sticky;top:68px}
.fs-title{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--gr);margin-bottom:14px;display:flex;justify-content:space-between;align-items:center}
.fs-clear{font-size:.75rem;color:var(--blue);cursor:pointer;text-decoration:none}
.filter-group{margin-bottom:14px;padding-bottom:14px;border-bottom:1px solid var(--gr-lt)}
.filter-group:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}
.fg-title{font-size:.825rem;font-weight:600;color:var(--dark);margin-bottom:6px}
.filter-check{display:flex;align-items:center;gap:8px;font-size:.85rem;color:var(--gr-dark);cursor:pointer;padding:2px 0}
.filter-check input{accent-color:var(--blue);width:14px;height:14px}
.filter-check-count{margin-left:auto;font-size:.72rem;color:var(--gr-mid)}
.search-bar{display:flex;gap:8px;margin-bottom:16px}
.search-input{flex:1;padding:9px 13px 9px 36px;border:1.5px solid var(--gr-lt);border-radius:var(--r);font-family:var(--font);font-size:.9rem;transition:border-color .15s}
.search-input:focus{outline:none;border-color:var(--blue)}
.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;flex-wrap:wrap;gap:8px}
.results-count{font-size:.85rem;color:var(--gr)}
.sort-sel{padding:7px 11px;border:1.5px solid var(--gr-lt);border-radius:var(--r);font-size:.85rem;font-family:var(--font);background:#fff}

/* ── TABLES ──────────────────────────────────────────── */
.table-wrap{overflow-x:auto;border:1px solid var(--gr-lt);border-radius:var(--r-lg);background:#fff}
.data-table{width:100%;border-collapse:collapse;font-size:.85rem}
.data-table th{padding:10px 16px;text-align:left;font-size:.72rem;font-weight:700;color:var(--gr);background:var(--gr-bg);border-bottom:1.5px solid var(--gr-lt);text-transform:uppercase;letter-spacing:.06em}
.data-table td{padding:12px 16px;border-bottom:1px solid var(--gr-lt);color:var(--dark)}
.data-table tr:last-child td{border-bottom:none}
.data-table tr:hover td{background:var(--gr-bg)}
.results-table-wrap{overflow-x:auto;border:1px solid var(--gr-lt);border-radius:var(--r-lg)}
.results-table{width:100%;border-collapse:collapse;background:#fff}
.results-table th{padding:10px 20px;text-align:left;font-size:.72rem;font-weight:700;color:var(--gr);background:var(--gr-bg);border-bottom:1.5px solid var(--gr-lt);text-transform:uppercase;letter-spacing:.06em}
.results-table td{padding:12px 20px;border-bottom:1px solid var(--gr-lt);font-size:.875rem}
.results-table tr:last-child td{border-bottom:none}
.results-table tr:hover td{background:var(--gr-bg)}
.row-blocked td{opacity:.5}
.inline-form{display:inline}

/* ── PANEL (admin/organizer) — white sidebar ─────────── */
.panel-body,.panel-layout{display:grid;grid-template-columns:220px 1fr;min-height:calc(100vh - 56px)}
.panel-sidebar{background:#fff;border-right:1px solid var(--gr-lt);padding:16px 0}
.sidebar-title-sm{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--gr-mid);padding:6px 16px 4px}
.sidebar-link{display:flex;align-items:center;gap:9px;padding:8px 16px;font-size:.85rem;font-weight:500;color:var(--gr-dark);text-decoration:none;transition:all .15s;border-left:2px solid transparent}
.sidebar-link:hover,.sidebar-link.active{color:var(--blue);background:var(--blue-lt);border-left-color:var(--blue)}
.sidebar-badge{margin-left:auto;background:var(--red);color:#fff;font-size:.62rem;font-weight:700;padding:2px 6px;border-radius:100px}
.sidebar-div{border:none;border-top:1px solid var(--gr-lt);margin:6px 16px}
.panel-main{background:white;overflow-x:hidden}
.panel-content{padding:24px}
.panel-title{font-size:1.25rem;font-weight:800;margin-bottom:4px;color:var(--dark)}
.panel-subtitle{color:var(--gr);margin-bottom:20px;font-size:.85rem}
.admin-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px}
.stat-card{background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r-lg);padding:18px}
.stat-card .sc-num{font-size:1.6rem;font-weight:800;color:var(--blue);display:block;line-height:1}
.stat-card .sc-lbl{font-size:.72rem;color:var(--gr);margin-top:4px;text-transform:uppercase;letter-spacing:.05em}
.panel-card{background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r-lg);overflow:hidden;margin-bottom:18px}
.panel-card-head{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--gr-lt)}
.panel-card-head h3{font-size:.95rem;font-weight:700}
.panel-card-body{padding:18px}
.panel-info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:20px;padding:16px;background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r-lg)}

/* ── CMS FORMS ───────────────────────────────────────── */
.cms-section{background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r-lg);padding:22px;margin-bottom:18px}
.cms-section h2{font-size:.95rem;font-weight:700;margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--gr-lt)}
.cms-section--danger{border-color:var(--red)}
.cms-form{max-width:640px}

/* ── ORGANIZER STATS STRIP ───────────────────────────── */
.org-stats-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px}
.org-stat{background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r-lg);padding:18px;position:relative;overflow:hidden}
.org-stat .num{font-size:2rem;font-weight:800;line-height:1;color:var(--dark)}
.org-stat .num-sub{font-size:.75rem;color:var(--green);font-weight:600;margin-top:2px}
.org-stat .lbl{font-size:.72rem;color:var(--gr);text-transform:uppercase;letter-spacing:.05em;margin-top:6px}
.org-stat .icon{position:absolute;right:16px;top:16px;width:36px;height:36px;border-radius:var(--r);display:flex;align-items:center;justify-content:center;font-size:.9rem}

/* ── QUICK ACTION CARDS ──────────────────────────────── */
.quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px}
.qa-card{background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r-lg);padding:18px;text-decoration:none;transition:all .15s;display:block}
.qa-card:hover{border-color:var(--blue);box-shadow:var(--shm);transform:translateY(-1px)}
.qa-card .icon{width:42px;height:42px;border-radius:var(--r);display:flex;align-items:center;justify-content:center;font-size:1rem;margin-bottom:12px}
.qa-card .title{font-size:.875rem;font-weight:700;color:var(--dark);margin-bottom:3px}
.qa-card .sub{font-size:.78rem;color:var(--gr)}
.qa-card .badge-cnt{display:none;background:var(--red-bg);color:var(--red);font-size:.7rem;font-weight:700;padding:2px 8px;border-radius:100px;margin-top:6px}

/* ── MODERATION ──────────────────────────────────────── */
.moderation-item{background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r-lg);padding:16px;margin-bottom:10px}
.mod-comment{font-size:.875rem;margin-bottom:10px}
.mod-actions{display:flex;gap:8px;flex-wrap:wrap}
.report-meta{font-size:.78rem;color:var(--gr-mid);margin-bottom:6px;display:flex;gap:12px;flex-wrap:wrap}
.report-summary{font-size:.85rem;font-weight:600;margin-bottom:6px;color:var(--dark)}
.report-content{font-size:.85rem;color:var(--gr-dark);padding:8px 12px;background:var(--gr-bg);border-left:3px solid var(--gr-lt);border-radius:0 var(--r) var(--r) 0}

/* ── ALERTS ──────────────────────────────────────────── */
.alert-box{padding:12px 16px;border-radius:var(--r);margin-bottom:14px;display:flex;align-items:flex-start;gap:10px;font-size:.875rem}
.alert-err,.alert-box--err{background:var(--red-bg);color:#991B1B;border-left:4px solid var(--red)}
.alert-box--warn{background:var(--amber-bg);color:#92400E;border-left:4px solid var(--amber)}
.alert-box--ok{background:var(--green-bg);color:#166534;border-left:4px solid var(--green)}
.alert-box--info{background:var(--blue-lt);color:var(--blue-dk);border-left:4px solid var(--blue)}
.info-box{padding:14px;border-radius:var(--r);font-size:.875rem;background:var(--blue-lt);color:var(--blue-dk);border:1px solid var(--blue-mid)}

/* ── ACTIVITY FEED ───────────────────────────────────── */
.activity-feed{background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r-lg)}
.activity-item{display:flex;align-items:center;gap:12px;padding:10px 16px;border-bottom:1px solid var(--gr-lt);font-size:.85rem}
.activity-item:last-child{border-bottom:none}
.act-icon{width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.78rem;flex-shrink:0}
.activity-blue{background:var(--blue-lt);color:var(--blue)}
.activity-green{background:var(--green-bg);color:var(--green)}
.activity-amber{background:var(--amber-bg);color:var(--amber)}
.activity-content{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.activity-time{font-size:.72rem;color:var(--gr-mid);flex-shrink:0}

/* ── PROGRESS ────────────────────────────────────────── */
.progress-bar{height:5px;background:var(--gr-lt);border-radius:100px;overflow:hidden}
.progress-fill{height:100%;background:var(--blue);border-radius:100px;transition:width .3s}

/* ── MULTI-STEP WIZARD ───────────────────────────────── */
.wizard-hero{background:var(--blue-hero);color:#fff;padding:24px 0}
.wizard-hero h1{color:#fff;font-size:1.3rem;font-weight:700}
.wizard-hero p{color:rgba(255,255,255,.75);font-size:.82rem;margin-top:3px}
.wizard-steps{display:flex;align-items:center;margin-top:18px;gap:0}
.ws-item{display:flex;align-items:center;gap:8px;font-size:.8rem}
.ws-num{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;flex-shrink:0;transition:all .2s}
.ws-num.done{background:rgba(255,255,255,.3);color:#fff}
.ws-num.done i{font-size:.7rem}
.ws-num.current{background:#fff;color:var(--blue)}
.ws-num.future{background:rgba(255,255,255,.15);color:rgba(255,255,255,.6)}
.ws-label{color:rgba(255,255,255,.9);font-weight:600}
.ws-label.future{color:rgba(255,255,255,.5);font-weight:400}
.ws-line{flex:1;height:2px;background:rgba(255,255,255,.25);margin:0 12px;min-width:24px;position:relative}
.ws-line.done{background:rgba(255,255,255,.6)}
/* Wizard form sections */
.wizard-body{background:var(--gr-bg);padding:24px 0 56px}
.wizard-section{background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r-lg);padding:22px;margin-bottom:16px}
.wizard-section-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}
.wizard-section-title{font-size:.95rem;font-weight:700;color:var(--dark)}
.wizard-section-badge{font-size:.72rem;padding:3px 9px;border-radius:100px;font-weight:700}
.badge-required{background:var(--red-bg);color:var(--red)}
.badge-optional{background:var(--gr-bg);color:var(--gr)}
.draft-bar{background:var(--amber-bg);border:1px solid #FDE68A;border-radius:var(--r);padding:12px 16px;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center;font-size:.85rem;color:#92400E}
.wizard-nav{display:flex;justify-content:space-between;align-items:center;margin-top:20px}

/* ── PDF VIEWER ──────────────────────────────────────── */
.pdf-layout{display:grid;grid-template-columns:140px 1fr 300px;border:1px solid var(--gr-lt);border-radius:var(--r-lg);overflow:hidden;min-height:680px;background:#fff}
.pdf-thumbs{background:var(--gr-bg);border-right:1px solid var(--gr-lt);display:flex;flex-direction:column}
.thumbs-header{background:var(--blue);color:#fff;padding:9px 12px;font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.thumbs-list{display:flex;flex-direction:column;gap:4px;padding:8px;overflow-y:auto;flex:1;max-height:640px}
.thumb-item{border:2px solid transparent;background:none;padding:4px;border-radius:4px;transition:border-color .15s;cursor:pointer}
.thumb-item:hover{border-color:var(--blue-mid)}
.thumb-item.active{border-color:var(--blue)}
.thumb-item span{display:block;font-size:.62rem;text-align:center;color:var(--gr-mid);margin-top:2px}
.pdf-main{display:flex;flex-direction:column}
.pdf-toolbar{display:flex;align-items:center;justify-content:space-between;padding:9px 14px;border-bottom:1px solid var(--gr-lt);background:#fff;font-size:.85rem;color:var(--gr-dark)}
.pdf-canvas{flex:1;background:#ECEFF4;display:flex;align-items:flex-start;justify-content:center;padding:14px;overflow-y:auto}
.pdf-page{display:none;max-width:100%}
.pdf-page.active{display:block}
.pdf-page-img{width:100%;border-radius:4px;box-shadow:var(--shm)}
.comments-panel{border-left:1px solid var(--gr-lt);display:flex;flex-direction:column;background:#fff}
.comments-panel-header{background:var(--blue);color:#fff;padding:10px 14px;display:flex;justify-content:space-between;align-items:center}
.comments-panel-header h3{color:#fff;font-size:.875rem;font-weight:600}
#commentsList{flex:1;overflow-y:auto;padding:10px;max-height:580px}
.comment-item{padding:10px 0;border-bottom:1px solid var(--gr-lt)}
.comment-item:last-child{border-bottom:none}
.comment-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:5px}
.comment-author{font-weight:600;font-size:.85rem}
.comment-meta time{font-size:.72rem;color:var(--gr-mid)}
.comment-content{font-size:.875rem;line-height:1.55}
.comment-fragment{background:var(--amber-bg);border-left:3px solid var(--amber);padding:5px 9px;font-size:.8rem;font-style:italic;margin-bottom:6px}
.comment-form-wrap{border-top:1px solid var(--gr-lt);padding:14px}
.comment-textarea{width:100%;border:1.5px solid var(--gr-lt);border-radius:var(--r);padding:9px;font-family:var(--font);font-size:.85rem;resize:vertical;min-height:80px;transition:border-color .15s}
.comment-textarea:focus{outline:none;border-color:var(--blue)}
.comment-form-footer{display:flex;justify-content:space-between;align-items:center;margin-top:8px}
.char-count{font-size:.75rem;color:var(--gr-mid)}
.comment-login-prompt{padding:18px;text-align:center;border-top:1px solid var(--gr-lt)}
.comment-actions{display:flex;gap:8px;margin-top:8px}
.comment-badge{display:inline-block;padding:2px 7px;border-radius:100px;font-size:.65rem;font-weight:700;background:var(--gr-bg);color:var(--gr)}
.empty-comments{color:var(--gr);text-align:center;padding:22px;font-size:.85rem}
.fragment-preview{background:var(--amber-bg);border-left:3px solid var(--amber);padding:10px;margin-bottom:10px;border-radius:0 4px 4px 0;font-size:.85rem}
.btn-reaction{background:none;border:1px solid var(--gr-lt);padding:3px 10px;border-radius:100px;font-size:.775rem;transition:all .15s;cursor:pointer}
.btn-reaction:hover{border-color:var(--blue);color:var(--blue)}
.btn-report{background:none;border:none;font-size:.775rem;color:var(--gr-mid);padding:3px 6px;transition:color .15s;cursor:pointer}
.btn-report:hover{color:var(--red)}
.tab-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;font-size:.85rem;font-weight:600;border-radius:6px;text-decoration:none;transition:all .15s;cursor:pointer;color:var(--gr-dark);background:transparent;border:1.5px solid transparent}
.tab-btn:hover{background:var(--blue-lt);color:var(--blue)}
.tab-active,.tab-btn.tab-active{background:var(--blue);color:#fff;border-color:var(--blue)}
.link-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--gr-lt)}
.link-row:last-child{border-bottom:none}

/* ── SURVEYS / QUESTIONS ─────────────────────────────── */
.question-field{margin-bottom:24px}
.question-label{display:block;font-weight:600;margin-bottom:8px;font-size:.9rem}
.scale-options{display:flex;gap:10px;flex-wrap:wrap}
.stars-input{display:flex;flex-direction:row-reverse;gap:4px;font-size:1.75rem}
.stars-input input{display:none}
.stars-input label{cursor:pointer;color:var(--gr-lt);transition:color .15s}
.stars-input input:checked ~ label,.stars-input label:hover ~ label,.stars-input label:hover{color:var(--amber)}
.form-range{width:100%;accent-color:var(--blue);margin:8px 0}

/* ── AUTH PAGES ──────────────────────────────────────── */
.auth-section{min-height:calc(100vh - 56px);display:flex;align-items:center;justify-content:center;padding:40px 24px;background:var(--gr-bg)}
.auth-card{background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r-lg);padding:36px;width:100%;max-width:440px;box-shadow:var(--shm)}
.auth-card h1{font-size:1.35rem;margin-bottom:6px}
.auth-desc{color:var(--gr);font-size:.875rem}
.auth-form{margin-top:20px}
.auth-footer{text-align:center;margin-top:16px;font-size:.875rem;color:var(--gr)}
.forgot-link{font-size:.875rem;color:var(--blue)}
.role-card{border:1.5px solid var(--gr-lt);border-radius:var(--r);padding:12px;cursor:pointer;transition:all .15s}
.role-card:hover{border-color:var(--blue)}
.role-card-active{border-color:var(--blue);background:var(--blue-lt)}

/* ── PROFILE / NOTIFICATIONS ─────────────────────────── */
.notification-item{padding:14px;border-bottom:1px solid var(--gr-lt);display:flex;gap:12px;align-items:flex-start;text-decoration:none;color:inherit;transition:background .12s}
.notification-item:hover{background:var(--gr-bg)}
.notification-item:last-child{border-bottom:none}
.notification-unread{background:var(--blue-lt)!important}
.notification-unread:hover{background:#DBEAFE!important}
.notif-icon{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;flex-shrink:0}
.notif-body{flex:1;min-width:0}
.notif-title{font-size:.875rem;font-weight:600;color:var(--dark);margin-bottom:3px}
.notif-desc{font-size:.82rem;color:var(--gr);line-height:1.4;margin-bottom:4px}
.notif-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.notif-link{font-size:.78rem;color:var(--blue);text-decoration:none;display:inline-flex;align-items:center;gap:4px}
.notif-link:hover{text-decoration:underline}
.notif-time{font-size:.72rem;color:var(--gr-mid);flex-shrink:0;padding-top:2px}

/* ── TABS (profile) ──────────────────────────────────── */
.profile-tabs{display:flex;gap:0;border-bottom:2px solid var(--gr-lt);margin-bottom:24px}
.profile-tab{display:inline-flex;align-items:center;gap:7px;padding:10px 18px;font-size:.85rem;font-weight:500;color:var(--gr);text-decoration:none;transition:all .15s;border-bottom:2px solid transparent;margin-bottom:-2px;cursor:pointer;background:none;border-left:none;border-right:none;border-top:none}
.profile-tab:hover{color:var(--blue)}
.profile-tab.active{color:var(--blue);border-bottom-color:var(--blue);font-weight:600}

/* ── INLINE MODAL TABS ───────────────────────────────── */
.modal-tabs{display:flex;border-bottom:2px solid var(--gr-lt);margin-bottom:20px}
.modal-tab{padding:10px 20px;font-size:.875rem;font-weight:600;color:var(--gr);border:none;background:none;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .15s}
.modal-tab.active{color:var(--blue);border-bottom-color:var(--blue)}

/* ── PAGINATION ──────────────────────────────────────── */
.pagination-wrap{margin-top:24px;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.pagination{display:flex;gap:4px;align-items:center}
.page-item{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 8px;border:1px solid var(--gr-lt);border-radius:var(--r);font-size:.85rem;color:var(--dark);text-decoration:none;transition:all .15s}
.page-item:hover{border-color:var(--blue);color:var(--blue)}
.page-item.active{background:var(--blue);color:#fff;border-color:var(--blue)}
.page-item.disabled{color:var(--gr-lt);pointer-events:none}

/* ── FOOTER ──────────────────────────────────────────── */
.site-footer{background:#fff;color:#6B7280;padding:48px 0 0;margin-top:64px;border-top:1px solid #E5E7EB}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:40px;padding-bottom:40px}
.footer-brand{font-size:.95rem;font-weight:700;color:#1E293B;margin-bottom:6px}
.footer-tagline{font-size:.825rem;color:#6B7280;line-height:1.6}
.site-footer h4{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#1565C0;margin-bottom:12px}
.site-footer a{display:block;color:#6B7280;font-size:.825rem;margin-bottom:6px;transition:color .15s;text-decoration:none}
.site-footer a:hover{color:#1565C0}
.site-footer p{font-size:.825rem;margin-bottom:5px;color:#6B7280}
.footer-bottom{padding:16px 0;border-top:1px solid #E5E7EB;font-size:.75rem;color:#9CA3AF;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
.footer-bottom a{display:inline;color:#9CA3AF;font-size:.75rem;margin-bottom:0}
.footer-bottom a:hover{color:#1565C0}
.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:var(--dark);color:rgba(255,255,255,.85);padding:12px 24px;display:flex;align-items:center;justify-content:space-between;gap:16px;z-index:500;border-top:2px solid var(--blue);font-size:.85rem;flex-wrap:wrap}
.empty-state{color:var(--gr);text-align:center;padding:40px 24px;border:2px dashed var(--gr-lt);border-radius:var(--r-lg)}
.breadcrumb{font-size:.78rem;color:rgba(255,255,255,.55);padding:8px 0 4px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.breadcrumb a{color:rgba(255,255,255,.55)}
.breadcrumb a:hover{color:#fff}
.head-badges{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:10px;align-items:center}
.head-actions{display:flex;gap:10px;flex-wrap:wrap;flex-shrink:0}
.consult-meta{display:flex;gap:16px;flex-wrap:wrap;font-size:.78rem;color:rgba(255,255,255,.7);align-items:center;margin-top:8px}
.consult-desc{margin-top:14px;font-size:.9rem;line-height:1.7;color:var(--gr-dark);max-width:800px}
.links-section{padding:28px 0;border-top:1px solid var(--gr-lt)}
.role-select{padding:5px 8px;border:1px solid var(--gr-lt);border-radius:4px;font-size:.78rem;font-family:var(--font)}

/* ── PDF.js TEXT LAYER ───────────────────────────────── */
#textLayer span{color:transparent;position:absolute;white-space:pre;cursor:text;transform-origin:0% 0%}
#textLayer ::selection{background:rgba(21,101,192,.35)}
#textLayer .highlight{background:rgba(255,212,0,.4);border-radius:2px}

/* ═══════════════════════════════════════════════════════
   RESPONSIVE BREAKPOINTS
═══════════════════════════════════════════════════════ */

/* ── ≤1280px ─────────────────────────────────────────── */
@media(max-width:1280px){
  :root{--px:20px}
  .footer-grid{grid-template-columns:1.5fr 1fr 1fr;gap:28px}
  .footer-grid>*:last-child{grid-column:1/-1}
}

/* ── ≤1024px ─────────────────────────────────────────── */
@media(max-width:1024px){
  .cons-layout{grid-template-columns:200px 1fr}
  .panel-info-grid{grid-template-columns:repeat(2,1fr)}
  .admin-stats{grid-template-columns:repeat(2,1fr)}
  .quick-actions{grid-template-columns:repeat(2,1fr)}
  .org-stats-strip{grid-template-columns:repeat(2,1fr)}
  .pdf-layout{grid-template-columns:120px 1fr 260px}
  .footer-grid{grid-template-columns:repeat(2,1fr);gap:28px}
}

/* ── ≤900px ──────────────────────────────────────────── */
@media(max-width:900px){
  .cons-layout{grid-template-columns:1fr}
  .filters-sidebar{position:static}
  .pdf-layout{grid-template-columns:1fr;grid-template-rows:auto 1fr auto}
  .pdf-thumbs{flex-direction:row;overflow-x:auto;border-right:none;border-bottom:1px solid var(--gr-lt)}
  .thumbs-list{flex-direction:row;max-height:none;overflow-x:auto;padding:8px}
  .thumb-item{flex-shrink:0;width:64px}
  .comments-panel{border-left:none;border-top:1px solid var(--gr-lt)}
}

/* ── ≤768px — MOBILE ─────────────────────────────────── */
@media(max-width:768px){
  :root{--px:16px}

  /* ── Header ── */
  .header-inner{position:relative;flex-wrap:nowrap;gap:8px;height:80px}
  .mobile-menu-btn{display:flex;margin-left:auto}
  /* Ukryj tekstowe przyciski logowania/rejestracji — zostaw avatar */
  .header-actions .btn-ghost,.header-actions .btn-primary{display:none}
  /* Avatar zawsze widoczny */
  .header-actions{display:flex;align-items:center;margin-left:0}
  .user-menu-btn{padding:4px 8px;gap:5px}
  .user-menu-btn .fa-chevron-down{display:none}
  /* Dropdown na mobile — pełna szerokość */
  .user-dropdown{right:0;left:auto;min-width:220px}

  /* ── Mobile nav ── */
  .main-nav{
    display:none;position:absolute;
    top:60px;left:0;right:0;
    background:#fff;
    border-bottom:1px solid var(--gr-lt);
    flex-direction:column;
    padding:8px 0;
    z-index:200;
    box-shadow:var(--shm)
  }
  .main-nav.is-open{display:flex}
  .main-nav .nav-link{
    padding:12px 20px;border-radius:0;font-size:.9rem;
    border-bottom:1px solid var(--gr-lt);
  }
  .main-nav .nav-link:last-child{border-bottom:none}
  /* Mobile nav — sekcja konta na dole (wstrzyknięta przez JS) */
  .mobile-user-section{
    border-top:2px solid var(--gr-lt);
    padding:8px 0;
    margin-top:4px
  }
  .mobile-user-section .mobile-user-info{
    padding:10px 20px 8px;
    font-size:.85rem
  }
  .mobile-user-section .mobile-user-name{font-weight:700;color:var(--dark)}
  .mobile-user-section .mobile-user-email{font-size:.75rem;color:var(--gr);margin-top:1px}
  .mobile-user-section .dropdown-item{padding:11px 20px;font-size:.875rem;border-bottom:1px solid var(--gr-lt)}
  .mobile-user-section .dropdown-item:last-child{border-bottom:none}
  .mobile-auth-btns{padding:12px 16px;display:flex;gap:8px;border-top:2px solid var(--gr-lt)}
  .mobile-auth-btns .btn{flex:1;justify-content:center;padding:10px 8px}

  /* ── Hero ── */
  .hero{padding:28px 0 20px}
  .hero-inner{grid-template-columns:1fr;gap:16px}
  .hero-photo{display:none}
  .hero-cta{flex-direction:column}
  .hero-cta .btn{width:100%;justify-content:center}

  /* ── Stats ── */
  .stat-box{border-bottom:1px solid var(--gr-lt);padding:14px 20px}
  .stat-box:last-child{border-bottom:none}

  /* ── Page hero stats ── */
  .page-hero-stats{gap:8px}
  .ph-stat{padding:12px 14px;min-width:auto;flex:1 1 calc(50% - 4px)}
  .ph-stat .num{font-size:1.3rem}

  /* ── Admin / organizer panel ── */
  .panel-body,.panel-layout{grid-template-columns:1fr}
  .panel-sidebar{
    display:none;position:fixed;
    top:0;bottom:0;left:0;
    width:270px;z-index:400;
    overflow-y:auto;box-shadow:var(--shl)
  }
  .panel-sidebar.is-open{display:block}
  .panel-content{padding:16px var(--px)}
  .admin-stats{grid-template-columns:repeat(2,1fr);gap:10px}
  .org-stats-strip{grid-template-columns:repeat(2,1fr);gap:10px}
  .quick-actions{grid-template-columns:repeat(2,1fr);gap:10px}
  .panel-info-grid{grid-template-columns:repeat(2,1fr)}

  /* ── Cards / grids ── */
  .cards-grid{grid-template-columns:1fr}
  .form-row-2{grid-template-columns:1fr}

  /* ── Tables ── */
  .table-wrap,.results-table-wrap{border-radius:var(--r)}
  .data-table th,.data-table td{padding:9px 12px;font-size:.82rem}
  .results-table th,.results-table td{padding:9px 12px;font-size:.82rem}

  /* ── Section head ── */
  .section-head{flex-direction:column;align-items:stretch}
  .head-actions{justify-content:flex-start;flex-wrap:wrap}

  /* ── Filters ── */
  .filters-bar{flex-direction:column;align-items:stretch}
  .filter-input{min-width:0}

  /* ── Wizard ── */
  .wizard-nav{flex-direction:column-reverse;gap:8px}
  .wizard-nav .btn{width:100%;justify-content:center}

  /* ── Footer ── */
  .footer-grid{grid-template-columns:1fr;gap:20px}
  .footer-grid>*:last-child{grid-column:auto}
  .site-footer{margin-top:40px;padding-top:32px}
  .footer-bottom{flex-direction:column;gap:4px;text-align:center;align-items: center;}

  /* ── Pagination ── */
  .pagination-wrap{flex-direction:column;align-items:center}
  .pagination{justify-content:center}

  /* ── Consultation card ── */
  .consultation-card{flex-direction:column;gap:10px}

  /* ── Auth ── */
  .auth-card{padding:24px 20px}
}

/* ── ≤600px ──────────────────────────────────────────── */
@media(max-width:600px){
  .admin-stats{grid-template-columns:1fr}
  .org-stats-strip{grid-template-columns:1fr}
  .quick-actions{grid-template-columns:1fr}
  .panel-info-grid{grid-template-columns:1fr}
  .page-hero-stats{flex-direction:column}
  .ph-stat{width:100%;flex:none}
  .stat-card{padding:14px}
  .stat-card .sc-num{font-size:1.4rem}
}

/* ── ≤400px ──────────────────────────────────────────── */
@media(max-width:400px){
  :root{--px:12px}
  .btn{padding:8px 14px;font-size:.8125rem}
  .btn-lg{padding:10px 18px;font-size:.9375rem}
  .auth-card{padding:20px 16px}
  .admin-stats{gap:8px}
}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important}}
@media print{.site-header,.site-footer,.pdf-thumbs,.comments-panel,.panel-sidebar{display:none}}

/* ── ≤768px ── */
@media (max-width: 768px) {
  .page-hero-stats {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    margin-top: 0;
  }

  .ph-stat {
    padding: 10px 6px;
    min-width: 0;
    flex: none;
  }

  .ph-stat .num {
    font-size: 1.2rem;
  }

  .ph-stat .lbl {
    font-size: .6rem;
    letter-spacing: .02em;
  }
}

/* ── ≤600px ── */
@media (max-width: 600px) {
  .page-hero-stats {
    grid-template-columns: repeat(3, 1fr);
    gap: 6px;
  }

  .ph-stat {
    padding: 8px 4px;
  }

  .ph-stat .num {
    font-size: 1rem;
  }

  .ph-stat .lbl {
    font-size: .58rem;
    letter-spacing: 0;
  }
}

/* ── ≤400px ── */
@media (max-width: 400px) {
  .page-hero-stats {
    grid-template-columns: repeat(3, 1fr);
    gap: 4px;
  }

  .ph-stat {
    padding: 8px 3px;
  }

  .ph-stat .num {
    font-size: .95rem;
  }

  .ph-stat .lbl {
    font-size: .55rem;
    /* NIE ukrywamy — tekst musi być widoczny */
  }
}

/* ═══════════════════════════════════════
   MOBILE — strona szczegółów konsultacji
═══════════════════════════════════════ */

/* ── ≤900px ── */
@media (max-width: 900px) {

  /* Nadpisanie inline style na głównym gridzie */
  .container > div[style*="grid-template-columns:1fr 320px"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    width: 100% !important;
  }

  /* Obie kolumny na pełną szerokość */
  .container > div[style*="grid-template-columns:1fr 320px"] > div {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }

  /* Prawa kolumna (sidebar) nad lewą */
  .container > div[style*="grid-template-columns:1fr 320px"] > div:last-child {
    order: -1;
    width: 100% !important;
  }

  /* Każda karta w sidebarze na pełną szerokość */
  .container > div[style*="grid-template-columns:1fr 320px"] > div:last-child > div[style] {
    width: 100% !important;
    box-sizing: border-box !important;
  }
}

/* ── ≤768px ── */
@media (max-width: 768px) {

  /* Hero — tytuł i przyciski pionowo */
  .page-hero > .container > div[style*="justify-content:space-between"] {
    flex-direction: column !important;
    gap: 14px !important;
  }

  /* Hero — przyciski full width */
  .page-hero > .container div[style*="flex-shrink:0"] {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
  }

  .page-hero > .container div[style*="flex-shrink:0"] .btn,
  .page-hero > .container div[style*="flex-shrink:0"] form,
  .page-hero > .container div[style*="flex-shrink:0"] form button {
    width: 100% !important;
    justify-content: center;
  }

  /* Hero meta — pionowo */
  .page-hero div[style*="gap:20px"][style*="font-size:.85rem"] {
    flex-direction: column !important;
    gap: 5px !important;
  }

  /* Baner uczestnictwa — stos */
  div[style*="background:var(--green-bg)"],
  div[style*="background:var(--blue-lt)"][style*="border:1px solid var(--blue)"] {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
  }

  div[style*="background:var(--green-bg)"] .btn,
  div[style*="background:var(--blue-lt)"][style*="border:1px solid var(--blue)"] .btn {
    width: 100% !important;
    justify-content: center;
    margin-left: 0 !important;
  }

  /* Padding kontenera */
  .container[style*="padding-top:40px"] {
    padding-top: 20px !important;
    padding-bottom: 32px !important;
  }

  /* Komentarze — zawijanie tekstu */
  div[style*="flex:1;min-width:0"] {
    overflow-wrap: break-word;
    word-break: break-word;
  }

  /* Meta komentarza */
  div[style*="align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px"] {
    gap: 5px !important;
  }
}

/* ── ≤600px ── */
@media (max-width: 600px) {

  /* Przyciski Udostępnij */
  div[style*="display:flex;gap:8px"] > a.btn-ghost,
  div[style*="display:flex;gap:8px"] > button.btn-ghost {
    font-size: .75rem;
    padding: 7px 8px;
  }

  /* Karty lewa — mniejszy padding */
  div[style*="padding:24px;margin-bottom:20px"] {
    padding: 16px !important;
  }

  /* Karty prawa — mniejszy padding */
  div[style*="padding:20px;margin-bottom:16px"] {
    padding: 14px !important;
  }

  /* Avatar komenta */
  div[style*="width:36px;height:36px;border-radius:50%"] {
    width: 30px !important;
    height: 30px !important;
    font-size: .72rem !important;
  }
}

/* ── ≤400px ── */
@media (max-width: 400px) {

  .page-hero h1 {
    font-size: 1.1rem !important;
  }
}

/* ── ≤768px — PDF scale + scroll fix ── */
@media (max-width: 768px) {

  /* PDF — dopasuj canvas do szerokości kontenera */
  #canvasWrap {
    padding: 8px !important;
    align-items: flex-start !important;
    overflow: auto !important;
  }

  #canvasContainer {
    max-width: 100% !important;
    width: 100% !important;
  }

  #pdfCanvas {
    max-width: 100% !important;
    height: auto !important;
    width: 100% !important;
  }

  #textLayer {
    display: none !important; /* text layer nie pasuje po CSS-rescale */
  }

  /* ── SCROLL FIX ── */

  /* Viewer wypełnia ekran, dzieci mogą scrollować */
  #docViewer {
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
  }

  /* tabDoc — flex column, nie przelewa się */
  #tabDoc {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  /* PDF panel — stała wysokość, canvas scrolluje wewnątrz */
  #tabDoc > div:first-child {
    flex: 0 0 45vh !important;
    min-height: 0 !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
  }

  /* Panel komentarzy — reszta przestrzeni, scrolluje */
  #tabDoc > div:last-child {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
  }

  /* Lista komentarzy — scroll działa */
  #commentsList {
    flex: 1 1 auto !important;
    overflow-y: auto !important;
    min-height: 0 !important;
    max-height: none !important;
  }

  /* Formularz komentarza — nie kurczy się */
  #tabDoc > div:last-child > div[style*="border-bottom"] {
    flex-shrink: 0 !important;
  }

  /* Nagłówek panelu — nie kurczy się */
  #tabDoc > div:last-child > div:first-child {
    flex-shrink: 0 !important;
  }
}

/* ── ≤480px ── */
@media (max-width: 480px) {

  #tabDoc > div:first-child {
    flex: 0 0 40vh !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — strona wyników konsultacji
═══════════════════════════════════════ */

/* ── ≤768px ── */
@media (max-width: 768px) {

  /* Breadcrumb — zawijaj */
  .breadcrumb {
    white-space: normal !important;
    line-height: 1.8;
  }

  /* Tytuł strony */
  .page-header h1 {
    font-size: 1.1rem !important;
    line-height: 1.3;
  }

  /* Stats grid — 2 kolumny zamiast 4 */
  div[style*="grid-template-columns:repeat(auto-fit,minmax(160px,1fr))"] {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
    margin-bottom: 20px !important;
  }

  /* Kafle statystyk — mniejszy padding */
  div[style*="grid-template-columns:repeat(auto-fit,minmax(160px,1fr))"] > .cms-section {
    padding: 16px 10px !important;
  }

  div[style*="grid-template-columns:repeat(auto-fit,minmax(160px,1fr))"] > .cms-section > div:first-child {
    font-size: 1.6rem !important;
  }

  /* Raport — padding */
  .report-summary,
  .report-content {
    font-size: .9rem !important;
    line-height: 1.7;
  }

  /* Przycisk wróć — full width */
  div[style*="margin-top:20px"] > .btn-ghost {
    display: flex !important;
    width: 100%;
    justify-content: center;
  }
}

/* ── ≤480px ── */
@media (max-width: 480px) {

  /* Stats — 1 kolumna na bardzo małych */
  div[style*="grid-template-columns:repeat(auto-fit,minmax(160px,1fr))"] {
    grid-template-columns: 1fr 1fr !important;
  }

  div[style*="grid-template-columns:repeat(auto-fit,minmax(160px,1fr))"] > .cms-section > div:first-child {
    font-size: 1.4rem !important;
  }

  div[style*="grid-template-columns:repeat(auto-fit,minmax(160px,1fr))"] > .cms-section > div:last-child {
    font-size: .75rem !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — zakończone konsultacje
═══════════════════════════════════════ */

/* ── ≤768px ── */
@media (max-width: 768px) {

  /* Tytuł */
  .page-header h1 {
    font-size: 1.2rem !important;
  }

  /* Karty — jedna kolumna, flex pionowo */
  .consultation-card {
    flex-direction: column !important;
    gap: 10px !important;
    padding: 14px !important;
  }

  /* Tytuł karty */
  .consultation-card .card-title {
    font-size: .9rem !important;
  }

  /* Meta — zawijaj */
  .consultation-card .card-meta {
    flex-wrap: wrap !important;
    gap: 8px !important;
    font-size: .78rem !important;
  }

  /* Przycisk wyniki — full width */
  .consultation-card .btn-ghost {
    width: 100% !important;
    justify-content: center !important;
    display: flex !important;
  }

  /* Paginacja */
  .pagination-wrap {
    flex-direction: column !important;
    align-items: center !important;
    gap: 8px !important;
  }
}

/* ── ≤480px ── */
@media (max-width: 480px) {

  .consultation-card {
    padding: 12px !important;
  }

  .consultation-card .card-title {
    font-size: .875rem !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — strona kontakt
═══════════════════════════════════════ */

/* ── ≤900px — tablet ── */
@media (max-width: 900px) {

  /* Grid info + formularz → pionowo */
  div[style*="grid-template-columns:1fr 1.55fr"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 28px !important;
  }
}

/* ── ≤768px ── */
@media (max-width: 768px) {

  /* Hero */
  .page-hero h1 {
    font-size: 1.4rem !important;
  }

  /* Formularz — mniejszy padding */
  div[style*="border-radius:14px"][style*="padding:36px"] {
    padding: 20px 16px !important;
    border-radius: 10px !important;
  }

  /* Imię + email → jedna kolumna */
  div[style*="grid-template-columns:1fr 1fr"][style*="gap:14px"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
  }

  /* Karty kontaktowe (adres, email itd.) */
  div[style*="display:flex;gap:14px;align-items:center;background:#fff"] {
    padding: 12px 14px !important;
    gap: 12px !important;
  }

  /* Captcha — stos pionowy */
  div[style*="display:flex;align-items:center;gap:12px"] {
    flex-wrap: wrap !important;
    gap: 8px !important;
  }

  div[style*="display:flex;align-items:center;gap:12px"] > span[style*="color:#94A3B8"] {
    width: 100%;
    margin-top: 2px;
  }

  /* Tło sekcji */
  div[style*="background:#F8FAFC;padding:48px 0 72px"] {
    padding: 28px 0 48px !important;
  }
}

/* ── ≤480px ── */
@media (max-width: 480px) {

  .page-hero h1 {
    font-size: 1.2rem !important;
  }

  /* Opis hero */
  .page-hero p {
    font-size: .875rem !important;
  }

  /* Ikona karty kontaktowej */
  div[style*="width:40px;height:40px;background:#EFF6FF"] {
    width: 34px !important;
    height: 34px !important;
    font-size: .85rem !important;
    flex-shrink: 0 !important;
  }

  /* Info box */
  div[style*="background:#EFF6FF;border:1px solid #BFDBFE"] {
    padding: 12px 14px !important;
    font-size: .78rem !important;
  }

  /* Przycisk wyślij */
  .btn-full[style*="padding:13px"] {
    padding: 12px !important;
    font-size: .9rem !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — lista ankiet + widok ankiety
═══════════════════════════════════════ */

/* ══════════════════
   LISTA ANKIET
══════════════════ */

/* ── ≤768px ── */
@media (max-width: 768px) {

  /* Hero */
  .page-hero h1 {
    font-size: 1.3rem !important;
  }

  /* Tło sekcji */
  div[style*="background:#F8FAFC"][style*="min-height:60vh"] {
    padding: 20px 0 40px !important;
  }

  /* Karta ankiety — flex pionowo */
  div[style*="background:#fff;border:1.5px solid #E2E8F0"] > div[style*="display:flex;gap:16px"] {
    flex-wrap: wrap !important;
    gap: 12px !important;
  }

  /* Ikona + treść + przycisk — na mobile ikona zostaje,
     treść zajmuje całość, przycisk pod spodem */
  div[style*="flex:1;min-width:0"] {
    min-width: 0 !important;
    width: calc(100% - 56px) !important;
  }

  /* Przycisk "Weź udział" — przesuń pod treść, full width */
  div[style*="background:#fff;border:1.5px solid #E2E8F0"] div[style*="flex-shrink:0"] {
    width: 100% !important;
    flex-shrink: unset !important;
  }

  div[style*="background:#fff;border:1.5px solid #E2E8F0"] div[style*="flex-shrink:0"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Tagi — zawijaj */
  div[style*="display:flex;align-items:center;gap:8px;margin-bottom:5px"] {
    flex-wrap: wrap !important;
    gap: 5px !important;
  }
}

/* ── ≤480px ── */
@media (max-width: 480px) {

  /* Ikona ankiety — trochę mniejsza */
  div[style*="width:44px;height:44px;background:#EFF6FF"] {
    width: 38px !important;
    height: 38px !important;
    border-radius: 8px !important;
  }

  /* Padding karty */
  div[style*="background:#fff;border:1.5px solid #E2E8F0;border-radius:10px;padding:20px"] {
    padding: 14px !important;
  }
}


/* ══════════════════
   WIDOK ANKIETY
══════════════════ */

/* ── ≤768px ── */
@media (max-width: 768px) {

  /* Hero ankiety */
  div[style*="background:linear-gradient(135deg,#1565C0"] {
    padding: 20px 0 !important;
  }

  div[style*="background:linear-gradient(135deg,#1565C0"] h1 {
    font-size: 1.15rem !important;
  }

  /* Max-width kontenera — usuń ograniczenie na mobile */
  .container[style*="max-width:680px"] {
    max-width: 100% !important;
  }

  /* Pytanie — mniejszy padding */
  .cms-section[style*="margin-bottom:14px"] {
    padding: 16px !important;
  }

  /* Opcje radio/checkbox — pełna szerokość */
  label[style*="display:flex;align-items:center;gap:10px;padding:10px 14px;border"] {
    padding: 10px 12px !important;
    font-size: .85rem !important;
  }

  /* Skala 1–5 — równe przyciski */
  div[style*="display:flex;gap:8px;flex-wrap:wrap;margin-top:6px"] {
    gap: 6px !important;
  }

  div[style*="display:flex;gap:8px;flex-wrap:wrap;margin-top:6px"] label {
    min-width: 40px !important;
    flex: 1 !important;
  }

  .scale-btn {
    padding: 10px 4px !important;
    font-size: .85rem !important;
  }

  /* Przycisk wyślij — full width */
  div[style*="display:flex;justify-content:flex-end;margin-top:20px"] {
    justify-content: stretch !important;
  }

  div[style*="display:flex;justify-content:flex-end;margin-top:20px"] .btn {
    width: 100% !important;
    justify-content: center !important;
    padding: 12px !important;
  }

  /* Baner "już odpowiedziałeś" */
  div[style*="background:#DCFCE7"][style*="display:flex;gap:12px"] {
    gap: 10px !important;
    padding: 14px !important;
    align-items: flex-start !important;
  }
}

/* ── ≤480px ── */
@media (max-width: 480px) {

  div[style*="background:linear-gradient(135deg,#1565C0"] h1 {
    font-size: 1rem !important;
  }

  /* Tagi w hero ankiety */
  div[style*="display:flex;gap:10px;margin-top:12px;flex-wrap:wrap"] {
    gap: 6px !important;
  }

  /* Textarea odpowiedź otwarta */
  .form-textarea {
    font-size: .875rem !important;
    min-height: 90px !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — profil użytkownika (wszystkie podstrony)
═══════════════════════════════════════ */

/* ══════════════════
   PROFILE HERO + TABS (layout partial)
══════════════════ */

@media (max-width: 768px) {

  /* Hero — avatar + dane pionowo */
  div[style*="background:linear-gradient(135deg,#1565C0"] > .container > div[style*="display:flex;align-items:center;gap:20px"] {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 14px !important;
  }

  /* Avatar — trochę mniejszy */
  div[style*="width:68px;height:68px;border-radius:50%"] {
    width: 56px !important;
    height: 56px !important;
    font-size: 1.3rem !important;
  }

  /* Tagi (dołączono / komentarze / aktywny) */
  div[style*="display:flex;gap:8px;margin-top:8px;flex-wrap:wrap"] {
    gap: 5px !important;
    margin-top: 6px !important;
  }

  /* Taby — scroll poziomy, nie zawijaj */
  div[style*="background:#fff;border-bottom:1px solid var(--gr-lt)"] nav {
    gap: 0 !important;
  }

  div[style*="background:#fff;border-bottom:1px solid var(--gr-lt)"] nav a {
    padding: 12px 14px !important;
    font-size: .8rem !important;
    white-space: nowrap !important;
  }
}

@media (max-width: 480px) {

  div[style*="background:linear-gradient(135deg,#1565C0"] {
    padding: 20px 0 !important;
  }

  div[style*="background:linear-gradient(135deg,#1565C0"] h1 {
    font-size: 1.1rem !important;
  }

  div[style*="background:#fff;border-bottom:1px solid var(--gr-lt)"] nav a {
    padding: 11px 12px !important;
    font-size: .75rem !important;
  }
}


/* ══════════════════
   POWIADOMIENIA
══════════════════ */

@media (max-width: 768px) {

  /* Nagłówek — stos */
  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:20px"] {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
  }

  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:20px"] form {
    width: 100%;
  }

  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:20px"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Wiersz powiadomienia */
  div[style*="display:flex;gap:12px;padding:14px 18px;border-bottom"] {
    padding: 12px 14px !important;
    gap: 10px !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
  }

  /* Czas — zawijaj, nie ucina się */
  div[style*="font-size:.72rem;color:var(--gr-mid);flex-shrink:0"] {
    white-space: normal !important;
    text-align: right !important;
    min-width: 56px !important;
  }

  /* Treść powiadomienia */
  div[style*="flex:1;min-width:0"] {
    min-width: 0 !important;
    overflow-wrap: break-word !important;
    word-break: break-word !important;
  }

  /* Linki akcji (przejdź / oznacz) */
  div[style*="display:flex;gap:14px;flex-wrap:wrap"] {
    gap: 10px !important;
    flex-wrap: wrap !important;
  }
}

@media (max-width: 480px) {

  /* Avatar ikony powiadomienia — mniejszy */
  div[style*="width:36px;height:36px;border-radius:50%"] {
    width: 30px !important;
    height: 30px !important;
    font-size: .75rem !important;
    flex-shrink: 0 !important;
  }
}


/* ══════════════════
   KOMENTARZE
══════════════════ */

@media (max-width: 768px) {

  /* Nagłówek wiersza — tytuł konsultacji + status/data */
  div[style*="display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px"] {
    flex-direction: column !important;
    gap: 6px !important;
    align-items: flex-start !important;
  }

  /* Status badge + data — obok siebie */
  div[style*="display:flex;gap:8px;align-items:center;flex-shrink:0"] {
    flex-shrink: unset !important;
    flex-wrap: wrap !important;
  }

  /* Karta komentarza */
  .cms-section[style*="padding:16px;margin-bottom:10px"] {
    padding: 14px !important;
  }
}


/* ══════════════════
   DANE KONTA
══════════════════ */

@media (max-width: 768px) {

  /* Imię + Nazwisko → jedna kolumna */
  .form-row-2 {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  /* Sekcja CMS */
  .cms-section {
    padding: 18px 16px !important;
  }

  .cms-section h2 {
    font-size: 1rem !important;
    margin-bottom: 16px !important;
  }

  /* Przyciski formularza — full width */
  .cms-section .btn-primary {
    width: 100% !important;
    justify-content: center !important;
    padding: 12px !important;
  }
}


/* ══════════════════
   OBSERWOWANE KONSULTACJE
══════════════════ */

@media (max-width: 768px) {

  /* Wiersz konsultacji — stos */
  .cms-section[style*="display:flex;justify-content:space-between"] {
    flex-direction: column !important;
    gap: 12px !important;
    align-items: stretch !important;
  }

  /* Przycisk "Przestań obserwować" — full width */
  .cms-section[style*="display:flex;justify-content:space-between"] form {
    width: 100% !important;
  }

  .cms-section[style*="display:flex;justify-content:space-between"] form .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Meta (data / komentarze) */
  div[style*="display:flex;gap:12px;font-size:.78rem;color:var(--gr-mid)"] {
    flex-wrap: wrap !important;
    gap: 8px !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — panel organizatora (wszystkie strony)
═══════════════════════════════════════ */

/* ══════════════════
   TOPNAV (partial — hero + nawigacja)
══════════════════ */

@media (max-width: 768px) {

  /* Hero topnav — tytuł i przycisk pionowo */
  div[style*="background:linear-gradient(135deg,#1565C0"] > .container > div[style*="justify-content:space-between"] {
    flex-direction: column !important;
    gap: 12px !important;
  }

  div[style*="background:linear-gradient(135deg,#1565C0"] > .container > div[style*="justify-content:space-between"] .btn-white {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Stats strip — 2 kolumny zamiast 4 */
  div[style*="grid-template-columns:repeat(4,1fr)"][style*="margin-top:20px"] {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 8px !important;
  }

  /* Nawigacja topnav — scroll poziomy */
  div[style*="background:#fff;border-bottom:2px solid var(--gr-lt)"] nav {
    overflow-x: auto !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  div[style*="background:#fff;border-bottom:2px solid var(--gr-lt)"] nav a {
    padding: 12px 14px !important;
    font-size: .8rem !important;
    white-space: nowrap !important;
  }
}

@media (max-width: 480px) {

  /* Stats strip — 2 kolumny, skompresowane */
  div[style*="grid-template-columns:repeat(4,1fr)"][style*="margin-top:20px"] > div {
    padding: 10px !important;
    gap: 8px !important;
  }

  div[style*="grid-template-columns:repeat(4,1fr)"][style*="margin-top:20px"] div[style*="font-size:1.4rem"] {
    font-size: 1.2rem !important;
  }
}


/* ══════════════════
   PANEL SIDEBAR (show / edit — panel-body layout)
══════════════════ */

@media (max-width: 768px) {

  /* Ukryj sidebar, panel-body jako jeden blok */
  .panel-body {
    grid-template-columns: 1fr !important;
  }

  .panel-sidebar {
    display: none !important;
  }

  .panel-main {
    min-width: 0 !important;
  }

  .panel-content {
    padding: 16px !important;
  }

  /* Akcje nad treścią — zawijaj */
  div[style*="display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px"] {
    flex-direction: column !important;
  }

  div[style*="display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px"] .btn,
  div[style*="display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px"] form,
  div[style*="display:flex;gap:10px;flex-wrap:wrap;margin-bottom:24px"] form button {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Panel info grid — 2 kolumny */
  .panel-info-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  /* Ankiety w show — wiersz ankiety pionowo */
  div[style*="border:1px solid var(--gr-lt);border-radius:var(--r);padding:16px;margin-bottom:10px;display:flex;align-items:center"] {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
  }

  div[style*="border:1px solid var(--gr-lt);border-radius:var(--r);padding:16px;margin-bottom:10px;display:flex;align-items:center"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  div[style*="border:1px solid var(--gr-lt);border-radius:var(--r);padding:16px;margin-bottom:10px;display:flex;align-items:center"] form {
    width: 100% !important;
  }

  div[style*="border:1px solid var(--gr-lt);border-radius:var(--r);padding:16px;margin-bottom:10px;display:flex;align-items:center"] form .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Przyciski Anuluj / Zapisz — koniec formularza */
  div[style*="display:flex;gap:10px;justify-content:flex-end"] {
    flex-direction: column !important;
  }

  div[style*="display:flex;gap:10px;justify-content:flex-end"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Przyciski z justify-content:space-between (Usuń szkic + Zapisz) */
  div[style*="display:flex;gap:10px;justify-content:space-between"] {
    flex-direction: column !important;
    gap: 8px !important;
  }

  div[style*="display:flex;gap:10px;justify-content:space-between"] > div {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
  }

  div[style*="display:flex;gap:10px;justify-content:space-between"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }
}


/* ══════════════════
   DASHBOARD
══════════════════ */

@media (max-width: 768px) {

  /* Quick actions — 1 kolumna */
  .quick-actions {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  /* Stats row — 1 kolumna */
  div[style*="display:grid;grid-template-columns:1fr 1fr;gap:16px"] {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  /* Tabela — scroll poziomy */
  .table-wrap {
    overflow-x: auto !important;
  }

  .data-table {
    min-width: 580px !important;
  }
}

@media (max-width: 480px) {

  .quick-actions .qa-card {
    padding: 14px !important;
    justify-items: center;
  }
}


/* ══════════════════
   LISTA KONSULTACJI (index)
══════════════════ */

@media (max-width: 768px) {

  /* Nagłówek — stos */
  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:20px"] {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:20px"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Filtry — stos pionowy */
  div[style*="display:flex;gap:8px;flex-wrap:wrap;align-items:center"] #searchInput,
  div[style*="display:flex;gap:8px;flex-wrap:wrap;align-items:center"] #statusFilter {
    width: 100% !important;
    box-sizing: border-box !important;
  }

  div[style*="display:flex;gap:8px;flex-wrap:wrap;align-items:center"] {
    flex-direction: column !important;
    align-items: stretch !important;
  }
}


/* ══════════════════
   KOMENTARZE I WYNIKI ANKIET
══════════════════ */

@media (max-width: 768px) {

  /* Nagłówek */
  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:18px"] {
    flex-direction: column !important;
    align-items: flex-start !important;
  }

  /* Stats — 2 kolumny */
  div[style*="grid-template-columns:repeat(auto-fit,minmax(140px,1fr))"] {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
  }

  /* Wyniki ankiet — padding */
  .panel-card-body div[style*="padding:16px 20px;border-bottom"] {
    padding: 14px !important;
  }

  /* Pasek wyników — etykiety nie ucinaj */
  div[style*="display:flex;justify-content:space-between;font-size:.82rem;margin-bottom:3px"] {
    flex-wrap: wrap !important;
    gap: 4px !important;
  }

  /* Tabela komentarzy */
  .data-table {
    min-width: 520px !important;
  }
}

@media (max-width: 480px) {

  div[style*="grid-template-columns:repeat(auto-fit,minmax(140px,1fr))"] {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  div[style*="grid-template-columns:repeat(auto-fit,minmax(140px,1fr))"] div[style*="font-size:1.8rem"] {
    font-size: 1.4rem !important;
  }
}


/* ══════════════════
   WIZARD (nowa konsultacja — 3 kroki)
══════════════════ */

@media (max-width: 768px) {

  /* Wizard hero — kroki */
  .wizard-hero {
    padding: 20px 0 !important;
  }

  /* Kroki — zmniejsz min-width żeby zmieściły się 3 */
  .wizard-hero > div > div[style*="display:flex;align-items:center;gap:0"] > div[style*="min-width:100px"] {
    min-width: 72px !important;
  }

  .wizard-hero > div > div[style*="display:flex;align-items:center;gap:0"] div[style*="font-size:.8rem"] {
    font-size: .7rem !important;
  }

  /* Krok — kółko trochę mniejsze */
  .wizard-hero div[style*="width:44px;height:44px;border-radius:50%"] {
    width: 36px !important;
    height: 36px !important;
    font-size: .85rem !important;
  }

  /* Wizard section */
  .wizard-section {
    padding: 16px !important;
  }

  /* Form row 2 → 1 kolumna */
  .form-row-2 {
    grid-template-columns: 1fr !important;
  }

  /* Nav buttons */
  .wizard-nav {
    flex-direction: column-reverse !important;
    gap: 8px !important;
  }

  .wizard-nav .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Drop zone — mniejszy padding */
  #dropZone {
    padding: 32px 16px !important;
  }

  /* Help section — przyciski zawijaj */
  div[style*="display:flex;gap:8px;margin-top:8px;flex-wrap:wrap"] {
    flex-direction: column !important;
    gap: 6px !important;
  }

  div[style*="display:flex;gap:8px;margin-top:8px;flex-wrap:wrap"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }
}


/* ══════════════════
   EDYTUJ ANKIETĘ
══════════════════ */

@media (max-width: 768px) {

  /* Kontener formularza — usuń max-width */
  .container[style*="max-width:760px"] {
    max-width: 100% !important;
  }

  /* Sekcje formularza */
  div[style*="background:#fff;border:1.5px solid #E2E8F0;border-radius:12px;padding:24px"] {
    padding: 16px !important;
    border-radius: 8px !important;
  }

  /* Wiersz pytania — numer + treść */
  div[style*="display:flex;gap:12px;padding:12px 0"] {
    gap: 10px !important;
    align-items: flex-start !important;
  }

  /* Przyciski na dole */
  div[style*="display:flex;gap:10px;justify-content:flex-end"] {
    flex-direction: column !important;
  }

  div[style*="display:flex;gap:10px;justify-content:flex-end"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Nowe pytanie block */
  .nq-block {
    padding: 14px !important;
  }
}


/* ══════════════════
   NOWA ANKIETA
══════════════════ */

@media (max-width: 768px) {

  .container[style*="max-width:800px"] {
    max-width: 100% !important;
  }

  /* Panel card */
  .panel-card-body > form {
    padding: 0 !important;
  }

  div[style*="padding:24px"] > form {
    padding: 0 !important;
  }

  /* Tytuł + typ → 1 kolumna */
  .form-row-2 {
    grid-template-columns: 1fr !important;
  }

  /* Question block */
  .question-block {
    padding: 14px !important;
  }

  .question-block > div[style*="display:flex;justify-content:space-between"] {
    flex-wrap: nowrap !important;
    align-items: center !important;
  }

  /* Przyciski submit */
  div[style*="display:flex;gap:10px"] > .btn-primary,
  div[style*="display:flex;gap:10px"] > .btn-ghost {
    flex: 1 !important;
    justify-content: center !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — panel administratora (wszystkie strony)
═══════════════════════════════════════ */

/* ══════════════════
   TOPNAV ADMINA (partial)
══════════════════ */

@media (max-width: 900px) {

  /* Stats strip — 3 kolumny */
  div[style*="grid-template-columns:repeat(5,1fr)"] {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 8px !important;
  }
}

@media (max-width: 768px) {

  /* Hero topnav — stos */
  div[style*="background:linear-gradient(135deg,#5B21B6"] > .container > div[style*="justify-content:space-between"] {
    flex-direction: column !important;
    gap: 10px !important;
  }

  div[style*="background:linear-gradient(135deg,#5B21B6"] > .container > div[style*="justify-content:space-between"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Stats strip — 2 kolumny */
  div[style*="grid-template-columns:repeat(5,1fr)"] {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 8px !important;
    padding-bottom: 16px !important;
  }

  div[style*="grid-template-columns:repeat(5,1fr)"] a {
    padding: 10px 12px !important;
  }

  div[style*="grid-template-columns:repeat(5,1fr)"] div[style*="font-size:1.7rem"] {
    font-size: 1.3rem !important;
  }

  /* Tabs nawigacji — scroll poziomy */
  div[style*="background:rgba(255,255,255,.07)"] > .container {
    overflow-x: auto !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
  }

  div[style*="background:rgba(255,255,255,.07)"] a {
    padding: 11px 12px !important;
    font-size: .75rem !important;
    white-space: nowrap !important;
  }
}

@media (max-width: 480px) {

  /* Stats strip — 2 kolumny, kompakt */
  div[style*="grid-template-columns:repeat(5,1fr)"] {
    grid-template-columns: 1fr 1fr !important;
  }

  div[style*="grid-template-columns:repeat(5,1fr)"] div[style*="font-size:1.7rem"] {
    font-size: 1.1rem !important;
  }

  div[style*="grid-template-columns:repeat(5,1fr)"] div[style*="font-size:.67rem"] {
    font-size: .62rem !important;
  }
}


/* ══════════════════
   DASHBOARD
══════════════════ */

@media (max-width: 768px) {

  /* Aktywne + aktywność — 1 kolumna */
  div[style*="grid-template-columns:2fr 1fr;gap:16px"] {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  /* Tabele — scroll poziomy */
  .data-table {
    min-width: 520px !important;
  }

  .table-wrap {
    overflow-x: auto !important;
  }

  /* Przyciski weryfikacji konsultacji — zawijaj */
  div[style*="display:flex;gap:6px"] > .btn,
  div[style*="display:flex;gap:6px"] > form > .btn {
    padding: 6px 10px !important;
    font-size: .75rem !important;
  }
}


/* ══════════════════
   KONSULTACJE (lista)
══════════════════ */

@media (max-width: 768px) {

  /* Nagłówek */
  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:18px"] {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 6px !important;
  }

  /* Przyciski akcji w tabeli — ikony, bez tekstu */
  .data-table .btn-sm {
    padding: 5px 8px !important;
    font-size: .78rem !important;
  }
}


/* ══════════════════
   UŻYTKOWNICY (lista)
══════════════════ */

@media (max-width: 768px) {

  /* Nagłówek z filtrem — stos */
  div[style*="padding:16px 20px;border-bottom:1px solid #E2E8F0;display:flex;justify-content:space-between"] {
    flex-direction: column !important;
    gap: 12px !important;
    align-items: stretch !important;
  }

  /* Formularz filtrów — stos */
  div[style*="padding:16px 20px;border-bottom:1px solid #E2E8F0;display:flex;justify-content:space-between"] form {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    width: 100% !important;
  }

  div[style*="padding:16px 20px;border-bottom:1px solid #E2E8F0;display:flex;justify-content:space-between"] input,
  div[style*="padding:16px 20px;border-bottom:1px solid #E2E8F0;display:flex;justify-content:space-between"] select,
  div[style*="padding:16px 20px;border-bottom:1px solid #E2E8F0;display:flex;justify-content:space-between"] button,
  div[style*="padding:16px 20px;border-bottom:1px solid #E2E8F0;display:flex;justify-content:space-between"] a {
    width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Wnioski organizatora — wiersz pionowo */
  div[style*="display:flex;align-items:center;gap:12px;padding:12px;background:#FFFBEB"] {
    flex-wrap: wrap !important;
  }

  div[style*="display:flex;align-items:center;gap:12px;padding:12px;background:#FFFBEB"] > div[style*="display:flex;gap:8px"] {
    width: 100% !important;
  }

  div[style*="display:flex;align-items:center;gap:12px;padding:12px;background:#FFFBEB"] > div[style*="display:flex;gap:8px"] form,
  div[style*="display:flex;align-items:center;gap:12px;padding:12px;background:#FFFBEB"] > div[style*="display:flex;gap:8px"] button {
    flex: 1 !important;
  }

  div[style*="display:flex;align-items:center;gap:12px;padding:12px;background:#FFFBEB"] > div[style*="display:flex;gap:8px"] button {
    width: 100% !important;
    justify-content: center !important;
  }
}


/* ══════════════════
   UŻYTKOWNIK — szczegóły (show)
══════════════════ */

@media (max-width: 768px) {

  /* Nagłówek — stos */
  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:20px"] {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 12px !important;
  }

  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:20px"] > div[style*="display:flex;gap:8px"] {
    width: 100% !important;
  }

  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:20px"] form {
    flex: 1 !important;
  }

  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:20px"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Grid info + rola — 1 kolumna */
  div[style*="display:grid;grid-template-columns:1fr 1fr;gap:20px"] {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  /* max-width kontenera */
  .container[style*="max-width:900px"] {
    max-width: 100% !important;
  }
}


/* ══════════════════
   MODERACJA
══════════════════ */

@media (max-width: 768px) {

  /* Główny grid — 1 kolumna, sidebar pod treścią */
  div[style*="grid-template-columns:1fr 280px;gap:24px"] {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }

  /* Sidebar moderacji przeniesiony na górę */
  div[style*="grid-template-columns:1fr 280px;gap:24px"] > div:last-child {
    order: -1 !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
  }

  /* Przyciski akcji zgłoszenia — zawijaj */
  div[style*="display:flex;gap:7px;padding-top:10px;border-top:1px solid #F1F5F9"] {
    flex-wrap: wrap !important;
    gap: 6px !important;
  }

  div[style*="display:flex;gap:7px;padding-top:10px;border-top:1px solid #F1F5F9"] form,
  div[style*="display:flex;gap:7px;padding-top:10px;border-top:1px solid #F1F5F9"] form button {
    flex: 1 !important;
    width: 100% !important;
    justify-content: center !important;
    text-align: center !important;
  }

  /* Meta zgłoszenia — zawijaj */
  div[style*="display:flex;gap:16px;flex-wrap:wrap;font-size:.75rem"] {
    gap: 8px !important;
  }

  /* Komentarz — akcje */
  div[style*="display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px"] {
    flex-direction: column !important;
    align-items: flex-start !important;
  }

  div[style*="display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px"] > div[style*="display:flex;gap:6px"] {
    width: 100% !important;
    justify-content: flex-end !important;
  }
}

@media (max-width: 480px) {

  /* Sidebar stat + uwaga — 1 kolumna */
  div[style*="grid-template-columns:1fr 280px;gap:24px"] > div:last-child {
    grid-template-columns: 1fr !important;
  }
}


/* ══════════════════
   CMS TREŚCI
══════════════════ */

@media (max-width: 768px) {

  /* Tabs sekcji — scroll poziomy */
  div[style*="display:flex;gap:0;margin-bottom:24px;background:#fff;border:1px solid #E2E8F0;border-radius:10px"] {
    overflow-x: auto !important;
    scrollbar-width: none !important;
    flex-wrap: nowrap !important;
    border-radius: 8px !important;
  }

  div[style*="display:flex;gap:0;margin-bottom:24px;background:#fff;border:1px solid #E2E8F0;border-radius:10px"] a {
    min-width: 90px !important;
    flex: 0 0 auto !important;
    padding: 10px 8px !important;
    font-size: .72rem !important;
  }

  /* Sekcje formularzy — 1 kolumna */
  div[style*="display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:20px"],
  div[style*="display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px"],
  div[style*="display:grid;grid-template-columns:1fr 1fr;gap:24px"],
  div[style*="display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px"] {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  /* Kroki "jak wziąć udział" — numer + 2 inputy → stos */
  div[style*="grid-template-columns:40px 1fr 2fr;align-items:center"] {
    grid-template-columns: 40px 1fr !important;
    gap: 10px !important;
  }

  div[style*="grid-template-columns:40px 1fr 2fr;align-items:center"] input:last-child {
    grid-column: 1 / -1 !important;
  }

  /* Padding sekcji CMS */
  div[style*="background:#fff;border:1px solid #E2E8F0;border-radius:10px;padding:28px"] {
    padding: 18px 16px !important;
  }

  /* Przycisk zapisz — full width */
  div[style*="background:#fff;border:1px solid #E2E8F0;border-radius:10px;padding:28px"] > form > button.btn-primary,
  div[style*="margin-top:20px"] > button.btn-primary {
    width: 100% !important;
    justify-content: center !important;
  }
}


/* ══════════════════
   STATYSTYKI
══════════════════ */

@media (max-width: 768px) {

  /* Nagłówek statystyk */
  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:16px"] {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 10px !important;
  }

  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:16px"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Admin stats grid — 2 kolumny */
  .admin-stats {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
  }
}

@media (max-width: 480px) {
  .admin-stats {
    grid-template-columns: 1fr 1fr !important;
  }

  .stat-card .sc-num {
    font-size: 1.3rem !important;
  }
}


/* ══════════════════
   EDYCJA KLUCZA CMS (panel-layout)
══════════════════ */

@media (max-width: 768px) {

  .panel-layout {
    grid-template-columns: 1fr !important;
  }

  .panel-layout .panel-sidebar {
    display: none !important;
  }

  .panel-layout .panel-main {
    max-width: 100% !important;
    padding: 16px !important;
  }
}


/* ══════════════════
   STRONY INFORMACYJNE (pages)
══════════════════ */

@media (max-width: 768px) {

  .container[style*="max-width:860px"] {
    max-width: 100% !important;
  }

  /* Nagłówek sekcji strony — zawijaj */
  h3[style*="display:flex;align-items:center;gap:8px"] {
    flex-wrap: wrap !important;
    gap: 6px !important;
  }

  h3[style*="display:flex;align-items:center;gap:8px"] .btn {
    margin-left: 0 !important;
    width: 100% !important;
    justify-content: center !important;
    margin-top: 4px !important;
  }

  /* Textarea HTML — mniejsza czcionka */
  textarea[style*="font-family:monospace"] {
    font-size: .75rem !important;
  }
}

/* ═══════════════════════════════════════
   POPRAWKI — admin dashboard mobile
═══════════════════════════════════════ */

@media (max-width: 768px) {
  .logo-img{height:auto;width:150px;object-fit:contain}
  /* Grid aktywne + aktywność — PEWNY selektor */
  .container > div[style*="grid-template-columns:2fr 1fr"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
  }

  /* Panel-card — nie może wylewać się poza ekran */
  .panel-card {
    overflow: hidden !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Table-wrap — scroll poziomy, nie wylewaj */
  .table-wrap {
    overflow-x: auto !important;
    max-width: 100% !important;
    -webkit-overflow-scrolling: touch !important;
  }

  /* Tabela min-width — wystarczająco szeroka żeby scroll działał */
  .table-wrap .data-table {
    min-width: 480px !important;
    width: max-content !important;
  }

  /* Stats strip — karty nie mogą wychodzić poza container */
  div[style*="grid-template-columns:repeat(5,1fr)"] {
    grid-template-columns: repeat(2, 1fr) !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  div[style*="grid-template-columns:repeat(5,1fr)"] > a {
    min-width: 0 !important;
    overflow: hidden !important;
  }

  /* Container admina — wymuszony padding */
  .container {
    overflow-x: hidden !important;
  }
}

@media (max-width: 480px) {

  /* Tabela jeszcze węższa min-width na bardzo małych */
  .table-wrap .data-table {
    min-width: 400px !important;
  }

  /* Stats — 2 kolumny kompakt */
  div[style*="grid-template-columns:repeat(5,1fr)"] {
    grid-template-columns: 1fr 1fr !important;
    padding-bottom: 12px !important;
  }

  /* Tekst w kartach statystyk — skróć */
  div[style*="grid-template-columns:repeat(5,1fr)"] div[style*="font-size:1.7rem"] {
    font-size: 1.2rem !important;
  }

  div[style*="grid-template-columns:repeat(5,1fr)"] div[style*="font-size:.67rem"] {
    font-size: .6rem !important;
    letter-spacing: 0 !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE HEADER — final v4
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* ── Header layout ── */
  .header-inner {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    position: relative !important;
  }

  /* Logo po lewej, reszta do prawej */
  .site-logo {
    margin-right: auto !important;
    flex-shrink: 0 !important;
  }

  /* Nav wyrwana z flow przez teleport+fixed — nie zajmuje miejsca */
  /* Header actions (przyciski auth gdy wylogowany) */
  .header-actions {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    flex-shrink: 0 !important;
  }

  /* Konto (zalogowany) — tuż przy hamburgerze */
  .user-menu-wrap {
    flex-shrink: 0 !important;
    display: flex !important;
    align-items: center !important;
  }

  .user-menu-btn {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 8px !important;
    background: none !important;
    border: 1px solid #E5E7EB !important;
    cursor: pointer !important;
    gap: 0 !important;
  }

  .user-menu-btn .fa-chevron-down {
    display: none !important;
  }

  .user-avatar {
    width: 28px !important;
    height: 28px !important;
    font-size: .75rem !important;
  }

  /* Hamburger */
  .mobile-menu-btn {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 5px !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    cursor: pointer !important;
    flex-shrink: 0 !important;
  }

  .mobile-menu-btn span {
    display: block !important;
    width: 22px !important;
    height: 2px !important;
    background: #1E293B !important;
    border-radius: 2px !important;
    transition: transform .25s ease, opacity .2s ease !important;
    transform-origin: center !important;
  }

  body.nav-open .mobile-menu-btn span:nth-child(1) { transform: translateY(7px) rotate(45deg) !important; }
  body.nav-open .mobile-menu-btn span:nth-child(2) { opacity: 0 !important; }
  body.nav-open .mobile-menu-btn span:nth-child(3) { transform: translateY(-7px) rotate(-45deg) !important; }

  /* Przyciski auth (wylogowany) — ikony */
  .header-actions > a.btn {
    font-size: 0 !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 8px !important;
    flex-shrink: 0 !important;
  }

  .header-actions > a.btn-ghost::before {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: .9rem;
    content: "\f2f6";
    color: #1565C0;
  }

  .header-actions > a.btn-primary::before {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: .9rem;
    content: "\f234";
    color: #fff;
  }

  /* ── Overlay ── */
  .mobile-overlay {
    display: none;
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    background: rgba(0,0,0,.5);
    z-index: 9000;
    cursor: pointer;
  }

  .mobile-overlay.active {
    display: block;
  }

  /* ── Nav z prawej ── */
  .main-nav {
    position: fixed !important;
    top: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    left: auto !important;
    width: 280px !important;
    max-width: 85vw !important;
    background: #fff !important;
    z-index: 9999 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: -4px 0 24px rgba(0,0,0,.15) !important;
    transform: translateX(100%) !important;
    transition: transform .3s ease !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  .main-nav.is-open {
    transform: translateX(0) !important;
  }

  .main-nav::before {
    content: 'MENU';
    display: block;
    padding: 16px 20px 14px;
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .12em;
    color: #94A3B8;
    border-bottom: 1px solid #F1F5F9;
    flex-shrink: 0;
  }

  .main-nav .nav-link {
    display: block !important;
    padding: 15px 20px !important;
    font-size: .9rem !important;
    font-weight: 600 !important;
    color: #1E293B !important;
    text-decoration: none !important;
    border-bottom: 1px solid #F8FAFC !important;
    transition: background .1s !important;
  }

  .main-nav .nav-link:hover { background: #F0F7FF !important; color: #1565C0 !important; }

  .main-nav .nav-link.active {
    color: #1565C0 !important;
    background: #EFF6FF !important;
    border-left: 3px solid #1565C0 !important;
    padding-left: 17px !important;
  }

  .main-nav .nav-link-cta {
    display: block !important;
    margin: 16px 20px 8px !important;
    padding: 12px 20px !important;
    text-align: center !important;
    background: #1565C0 !important;
    color: #fff !important;
    border-radius: 8px !important;
    border: none !important;
    font-weight: 600 !important;
    font-size: .88rem !important;
  }

  .main-nav .nav-link-cta:hover {
    background: #0D47A1 !important;
    color: #fff !important;
  }

  /* ── Dropdown konta z lewej ── */
  .user-dropdown {
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    bottom: 0 !important;
    right: auto !important;
    width: 280px !important;
    max-width: 85vw !important;
    max-height: none !important;
    background: #fff !important;
    z-index: 9999 !important;
    display: flex !important;
    flex-direction: column !important;
    border-radius: 0 !important;
    border: none !important;
    border-right: 1px solid #E2E8F0 !important;
    box-shadow: 4px 0 24px rgba(0,0,0,.1) !important;
    transform: translateX(-100%) !important;
    transition: transform .3s ease !important;
    overflow-y: auto !important;
    pointer-events: none !important;
    visibility: hidden !important;
  }

  .user-dropdown.is-open {
    transform: translateX(0) !important;
    pointer-events: auto !important;
    visibility: visible !important;
  }

  .user-dropdown > div:first-child {
    padding: 28px 18px 18px !important;
    background: linear-gradient(135deg,#1565C0,#0D47A1) !important;
    border-bottom: none !important;
    flex-shrink: 0 !important;
  }

  .user-dropdown > div:first-child > div:first-child {
    color: #fff !important;
    font-size: .95rem !important;
    font-weight: 700 !important;
  }

  .user-dropdown > div:first-child > div:last-child {
    color: rgba(255,255,255,.65) !important;
    font-size: .78rem !important;
    margin-top: 3px !important;
  }

  .dropdown-item {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 14px 18px !important;
    font-size: .88rem !important;
    color: #1E293B !important;
    border-bottom: 1px solid #F8FAFC !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    text-decoration: none !important;
    background: none !important;
    width: 100% !important;
    text-align: left !important;
    cursor: pointer !important;
    font-family: inherit !important;
    transition: background .1s !important;
    box-sizing: border-box !important;
  }

  .dropdown-item:hover { background: #F8FAFC !important; }
  .dropdown-item i { width: 18px !important; color: #64748B !important; font-size: .85rem !important; text-align: center !important; flex-shrink: 0 !important; }
  .dropdown-item.danger { color: #DC2626 !important; }
  .dropdown-item.danger i { color: #DC2626 !important; }

  .dropdown-divider {
    height: 1px !important;
    background: #F1F5F9 !important;
    border: none !important;
    margin: 4px 0 !important;
  }
}

@media (max-width: 768px) {

  /* ── Oba przyciski auth — identyczne 36×36 ── */
  .header-actions > a.btn-ghost,
  .header-actions > a.btn-primary {
    font-size: 0 !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    max-width: 36px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 8px !important;
    flex-shrink: 0 !important;
    box-sizing: border-box !important;
    line-height: 1 !important;
  }

  .header-actions > a.btn-ghost::before {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: .9rem;
    content: "\f2f6";
    color: #1565C0;
  }

  .header-actions > a.btn-primary::before {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    font-size: .9rem;
    content: "\f234";
    color: #fff;
  }

  /* ── Header inner — logo | [przyciski/konto] [hamburger] ── */
  .header-inner {
    display: flex !important;
    align-items: center !important;
    gap: 0 !important;
  }

  .site-logo {
    margin-right: auto !important;
  }

  /* header-actions i user-menu-wrap — tuż przed hamburgerem */
  .header-actions {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    margin-right: 8px !important;
    flex-shrink: 0 !important;
  }

  /* Konto (zalogowany) — ten sam margines */
  .user-menu-wrap {
    flex-shrink: 0 !important;
    margin-right: 8px !important;
    display: flex !important;
    align-items: center !important;
  }

  /* Przycisk konta — identyczny rozmiar co inne przyciski */
  .user-menu-btn {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 8px !important;
    background: #1565C0 !important;
    border: none !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
  }

  .user-menu-btn .fa-chevron-down {
    display: none !important;
  }

  .user-avatar {
    width: 28px !important;
    height: 28px !important;
    font-size: .75rem !important;
    background: rgba(255,255,255,.25) !important;
    color: #fff !important;
  }

  /* Hamburger — bez dodatkowego marginesu */
  .mobile-menu-btn {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 5px !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    cursor: pointer !important;
    flex-shrink: 0 !important;
    margin: 0 !important;
  }

  .mobile-menu-btn span {
    display: block !important;
    width: 22px !important;
    height: 2px !important;
    background: #1E293B !important;
    border-radius: 2px !important;
    transition: transform .25s ease, opacity .2s ease !important;
    transform-origin: center !important;
  }

  body.nav-open .mobile-menu-btn span:nth-child(1) { transform: translateY(7px) rotate(45deg) !important; }
  body.nav-open .mobile-menu-btn span:nth-child(2) { opacity: 0 !important; }
  body.nav-open .mobile-menu-btn span:nth-child(3) { transform: translateY(-7px) rotate(-45deg) !important; }
}

/* ═══════════════════════════════════════
   PDF VIEWER — ograniczenie szerokości
═══════════════════════════════════════ */

/* Viewer zawsze zajmuje pełną szerokość viewportu — OK */
/* Problem: canvas wychodzi poza lewą kolumnę */

/* Lewa kolumna — nie może przelewać */
#tabDoc > div:first-child {
  min-width: 0 !important;
  overflow: hidden !important;
}

/* canvasWrap — scroll tylko gdy canvas szerszy niż kolumna */
#canvasWrap {
  overflow: auto !important;
  align-items: flex-start !important;
}

/* canvasContainer — nie szerszy niż dostępna przestrzeń */
#canvasContainer {
  max-width: 100% !important;
}

/* Canvas — skaluj CSS do szerokości kontenera,
   height:auto zachowuje proporcje */
#pdfCanvas {
  max-width: 100% !important;
  height: auto !important;
  display: block !important;
}

/* Text layer — dopasuj do CSS-skalowanego canvasa */
#textLayer {
  max-width: 100% !important;
}

/* Prawa kolumna komentarzy — stała szerokość, nie rośnie */
#tabDoc > div:last-child {
  width: 380px !important;
  min-width: 380px !important;
  max-width: 380px !important;
  flex-shrink: 0 !important;
}

/* Na bardzo szerokich ekranach — ogranicz cały viewer */
@media (min-width: 1400px) {
  #tabDoc {
    grid-template-columns: 1fr 380px !important;
  }
}

/* ── Mobile już obsługiwane wcześniej ── */
@media (max-width: 768px) {
  #tabDoc > div:last-child {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}

/* ── Hero bullets — ikona po lewej, tekst po prawej (OCHRONA) ── */
.hero-text > div[style*="flex-direction:column"] > div[style*="gap:12px"] {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 12px !important;
  width: 100% !important;
}

/* Ikona — zawsze flex-shrink:0, nie rośnie do full width */
.hero-text > div[style*="flex-direction:column"] > div[style*="gap:12px"] > span {
  flex-shrink: 0 !important;
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
}

/* Tekst po prawej ikony — zajmuje resztę */
.hero-text > div[style*="flex-direction:column"] > div[style*="gap:12px"] > div {
  flex: 1 !important;
  min-width: 0 !important;
  width: auto !important;
}

@media (max-width: 480px) {
  .hero-text > div[style*="flex-direction:column"] {
    gap: 10px !important;
  }

  .hero-text > div[style*="flex-direction:column"] > div[style*="gap:12px"] {
    font-size: .85rem !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — profil organizatora (pełny)
═══════════════════════════════════════ */

/* ── ≤900px — sidebar węższa ── */
@media (max-width: 900px) {
  div[style*="grid-template-columns:280px 1fr"] {
    grid-template-columns: 220px 1fr !important;
    gap: 20px !important;
  }
}

/* ── ≤768px — pełny mobile ── */
@media (max-width: 768px) {

  /* Hero — kompaktowy padding */
  .page-hero {
    padding: 20px 0 !important;
  }

  /* Hero — avatar + nazwa poziomo, nigdy nie łamie się w kolumnę */
  .page-hero .container > div[style*="display:flex;align-items:center;gap:20px"] {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: 12px !important;
  }

  /* Avatar — mniejszy */
  .page-hero .container div[style*="width:72px;height:72px"] {
    width: 44px !important;
    height: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    flex-shrink: 0 !important;
    border-width: 2px !important;
  }

  .page-hero .container div[style*="width:72px;height:72px"] i {
    font-size: 1rem !important;
  }

  .page-hero .container div[style*="width:72px;height:72px"] img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
  }

  /* Tekst obok avatara — nie wychodzi za ekran */
  .page-hero .container div[style*="display:flex;align-items:center;gap:20px"] > div {
    min-width: 0 !important;
    flex: 1 !important;
    overflow: hidden !important;
  }

  /* Tytuł hero — nie łamie layoutu */
  .page-hero h1 {
    font-size: 1rem !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    margin: 0 !important;
  }

  .page-hero-sub {
    font-size: .78rem !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    margin: 2px 0 0 !important;
    opacity: .8;
  }

  /* Grid sidebar + treść → jedna kolumna */
  div[style*="grid-template-columns:280px 1fr"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 20px !important;
  }

  /* Sidebar — pełna szerokość */
  div[style*="grid-template-columns:280px 1fr"] > aside {
    width: 100% !important;
  }

  /* Karta "Dane organizatora" — 2 kolumny */
  div[style*="grid-template-columns:280px 1fr"] > aside > div:first-child {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    column-gap: 12px !important;
    padding: 16px !important;
  }

  /* Nagłówek "Dane organizatora" i wiersz z liczbą konsultacji — pełna szerokość */
  div[style*="grid-template-columns:280px 1fr"] > aside > div:first-child > h3,
  div[style*="grid-template-columns:280px 1fr"] > aside > div:first-child > div[style*="margin-top:14px"] {
    grid-column: 1 / -1 !important;
  }

  /* Wiersze danych — ikona po lewej, tekst po prawej (nie łamie się) */
  div[style*="grid-template-columns:280px 1fr"] > aside div[style*="display:flex;gap:10px;margin-bottom:10px"] {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 8px !important;
    width: 100% !important;
  }

  /* Ikona w wierszu danych — nie kurczy się */
  div[style*="grid-template-columns:280px 1fr"] > aside div[style*="display:flex;gap:10px;margin-bottom:10px"] > i {
    flex-shrink: 0 !important;
    width: 16px !important;
    min-width: 16px !important;
  }

  /* Tekst w wierszu danych — zawijaj długie wartości */
  div[style*="grid-template-columns:280px 1fr"] > aside div[style*="display:flex;gap:10px;margin-bottom:10px"] > span,
  div[style*="grid-template-columns:280px 1fr"] > aside div[style*="display:flex;gap:10px;margin-bottom:10px"] > a {
    word-break: break-word !important;
    overflow-wrap: break-word !important;
  }

  /* Bio — pełna szerokość */
  div[style*="grid-template-columns:280px 1fr"] > aside > div:last-child {
    padding: 16px !important;
  }

  /* Treść — pełna szerokość */
  div[style*="grid-template-columns:280px 1fr"] > div {
    width: 100% !important;
  }

  div[style*="grid-template-columns:280px 1fr"] > div > h2 {
    font-size: 1rem !important;
    margin-bottom: 14px !important;
  }

  /* Karty konsultacji — 1 kolumna */
  .cards-grid {
    grid-template-columns: 1fr !important;
  }
}

/* ── ≤600px — dane organizatora → 1 kolumna ── */
@media (max-width: 600px) {
  div[style*="grid-template-columns:280px 1fr"] > aside > div:first-child {
    grid-template-columns: 1fr !important;
  }
}

/* ── ≤480px ── */
@media (max-width: 480px) {

  .page-hero .container div[style*="width:72px;height:72px"] {
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    max-width: 36px !important;
  }

  .page-hero h1 {
    font-size: .9rem !important;
  }

  .page-hero-sub {
    font-size: .72rem !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — strona wypisania z powiadomień
═══════════════════════════════════════ */

@media (max-width: 480px) {
  .container[style*="max-width:520px"] {
    padding: 40px 16px !important;
  }

  .container[style*="max-width:520px"] h1 {
    font-size: 1.2rem !important;
  }

  .container[style*="max-width:520px"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — konsultacja prywatna
═══════════════════════════════════════ */

@media (max-width: 480px) {

  div[style*="min-height:70vh"] > div[style*="max-width:480px"] {
    padding: 28px 20px !important;
    border-radius: 10px !important;
    margin: 0 16px !important;
    width: calc(100% - 32px) !important;
  }

  div[style*="min-height:70vh"] > div[style*="max-width:480px"] > div[style*="width:64px"] {
    width: 52px !important;
    height: 52px !important;
    margin-bottom: 14px !important;
  }

  div[style*="min-height:70vh"] > div[style*="max-width:480px"] > div[style*="width:64px"] i {
    font-size: 1.3rem !important;
  }

  div[style*="min-height:70vh"] > div[style*="max-width:480px"] h1 {
    font-size: 1.1rem !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — lista ankiet i sond
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Hero */
  div[style*="background:white;min-height:60vh"] {
    padding: 20px 0 40px !important;
  }

  /* Nagłówek z licznikiem — stos */
  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:20px"] {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 8px !important;
  }
}

@media (max-width: 480px) {

  /* Hero tytuł */
  .page-hero h1[style*="font-size:1.6rem"] {
    font-size: 1.25rem !important;
  }

  /* Padding kart */
  div[style*="background:#fff;border:1.5px solid #E2E8F0;border-radius:10px;padding:20px"] {
    padding: 14px !important;
  }

  /* Flash */
  .flash {
    font-size: .82rem !important;
  }

  /* Paginacja */
  .pagination-wrap {
    flex-direction: column !important;
    align-items: center !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — ankieta prywatna
═══════════════════════════════════════ */

@media (max-width: 480px) {

  div[style*="min-height:70vh"] > div[style*="max-width:480px"] {
    padding: 28px 20px !important;
    border-radius: 10px !important;
    margin: 0 16px !important;
    width: calc(100% - 32px) !important;
  }

  div[style*="min-height:70vh"] > div[style*="max-width:480px"] > div[style*="width:64px"] {
    width: 52px !important;
    height: 52px !important;
    margin-bottom: 14px !important;
  }

  div[style*="min-height:70vh"] > div[style*="max-width:480px"] > div[style*="width:64px"] i {
    font-size: 1.3rem !important;
  }

  div[style*="min-height:70vh"] > div[style*="max-width:480px"] h1 {
    font-size: 1.1rem !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — dziękujemy za ankietę
═══════════════════════════════════════ */

@media (max-width: 600px) {

  .container[style*="max-width:600px"] {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
  }

  .container[style*="max-width:600px"] > div[style*="padding:48px 32px"] {
    padding: 28px 20px !important;
  }

  .container[style*="max-width:600px"] div[style*="width:72px;height:72px"] {
    width: 56px !important;
    height: 56px !important;
  }

  .container[style*="max-width:600px"] div[style*="width:72px;height:72px"] i {
    font-size: 1.5rem !important;
  }

  .container[style*="max-width:600px"] h1 {
    font-size: 1.15rem !important;
  }

  /* Przyciski — każdy na pełną szerokość */
  .container[style*="max-width:600px"] div[style*="display:flex;gap:10px;justify-content:center"] {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  .container[style*="max-width:600px"] div[style*="display:flex;gap:10px;justify-content:center"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — widok ankiety (show)
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Hero — tagi zawijaj */
  .page-hero div[style*="display:flex;gap:8px;margin-bottom:10px"] {
    gap: 5px !important;
  }

  .page-hero h1[style*="color:#fff;margin:0 0 8px"] {
    font-size: 1.15rem !important;
  }

  /* Kontener formularza — padding */
  .container[style*="max-width:1000px"] {
    padding-top: 20px !important;
    padding-bottom: 32px !important;
  }

  /* Blok pytania */
  div[style*="background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r);padding:20px;margin-bottom:14px"] {
    padding: 14px !important;
  }

  /* Rating scale — za dużo opcji w rzędzie na małym ekranie */
  div[style*="display:flex;align-items:center;justify-content:space-between;margin-bottom:8px"] {
    gap: 4px !important;
  }

  div[style*="display:flex;align-items:center;justify-content:space-between;margin-bottom:8px"] label {
    gap: 2px !important;
  }

  div[style*="display:flex;align-items:center;justify-content:space-between;margin-bottom:8px"] label span {
    font-size: .72rem !important;
  }

  div[style*="display:flex;align-items:center;justify-content:space-between;margin-bottom:8px"] input[type="radio"] {
    width: 15px !important;
    height: 15px !important;
  }

  /* Gwiazdki — mniejsze na mobile */
  .star-rating {
    font-size: 1.5rem !important;
    gap: 4px !important;
  }

  /* Przycisk wyślij — full width */
  div[style*="text-align:center;margin-top:24px"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Baner "już odpowiedziałeś" */
  div[style*="background:#F0FDF4;border:1px solid #BBF7D0"] {
    padding: 14px !important;
  }
}

@media (max-width: 600px) {

  /* Wyniki — nagłówek sekcji */
  .container[style*="max-width:1000px;padding-bottom:56px"] h2 {
    font-size: .9rem !important;
    flex-wrap: wrap !important;
  }

  /* Wyniki — blok pytania */
  div[style*="background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r);padding:18px;margin-bottom:12px"] {
    padding: 12px !important;
  }

  /* Wyniki — etykieta + procent — zawijaj gdy za długa */
  div[style*="display:flex;justify-content:space-between;font-size:.82rem;margin-bottom:3px"] {
    flex-wrap: wrap !important;
    gap: 3px !important;
  }

  div[style*="display:flex;justify-content:space-between;font-size:.82rem;margin-bottom:3px"] > span:last-child {
    margin-left: auto !important;
  }
}

@media (max-width: 480px) {

  .page-hero h1[style*="color:#fff;margin:0 0 8px"] {
    font-size: 1rem !important;
  }

  /* Etykiety skali (min/max) */
  div[style*="display:flex;justify-content:space-between;font-size:.75rem;color:var(--gr)"] {
    font-size: .68rem !important;
  }

  /* Rating scale — przy bardzo małym ekranie i dużej skali (np. 1-10)
     przełącz na wrap żeby się zmieściły */
  div[style*="display:flex;align-items:center;justify-content:space-between;margin-bottom:8px"] {
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 8px !important;
  }

  /* Ranking item */
  div[style*="background:#F8FAFC;border:1px solid var(--gr-lt);border-radius:var(--r);padding:10px 14px"] {
    padding: 9px 10px !important;
    font-size: .85rem !important;
  }

  /* Baner terminu ankiety */
  div[style*="background:#FFFBEB;border:1px solid #FDE68A;padding:10px 14px"] {
    font-size: .78rem !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — szczegóły konsultacji (show)
═══════════════════════════════════════ */

/* ── ≤900px — sidebar węższa ── */
@media (max-width: 900px) {
  .container > div[style*="grid-template-columns:1fr 320px"] {
    grid-template-columns: 1fr 260px !important;
    gap: 20px !important;
  }
}

/* ── ≤768px — layout pionowy ── */
@media (max-width: 768px) {

  /* Hero — padding */
  .page-hero {
    padding: 20px 0 !important;
  }

  /* Hero — nagłówek + przyciski → stos */
  .page-hero .container > div[style*="display:flex;justify-content:space-between"] {
    flex-direction: column !important;
    gap: 14px !important;
  }

  /* Hero — przyciski full width */
  .page-hero .container div[style*="flex-shrink:0"] {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    gap: 8px !important;
  }

  .page-hero .container div[style*="flex-shrink:0"] > .btn,
  .page-hero .container div[style*="flex-shrink:0"] > form,
  .page-hero .container div[style*="flex-shrink:0"] > form > .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Panel "obserwuj gość" — na mobile pełna szerokość, nie absolute */
  #guestWatchPanel {
    position: static !important;
    width: 100% !important;
    box-shadow: none !important;
    border: 1px solid var(--gr-lt) !important;
    border-radius: var(--r) !important;
    margin-top: 4px !important;
  }

  #guestWatchPanel > div[style*="position:absolute"] {
    display: none !important;
  }

  /* Hero — meta (organizator, daty, komentarze) → stos */
  .page-hero div[style*="display:flex;gap:20px;flex-wrap:wrap;font-size:.85rem"] {
    flex-direction: column !important;
    gap: 5px !important;
  }

  /* Hero tytuł */
  .page-hero h1 {
    font-size: 1.1rem !important;
  }

  /* Baner uczestnictwa → stos */
  div[style*="background:var(--green-bg)"][style*="border:1px solid var(--green)"],
  div[style*="background:var(--blue-lt)"][style*="border:1px solid var(--blue)"] {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
    padding: 14px !important;
  }

  div[style*="background:var(--green-bg)"][style*="border:1px solid var(--green)"] .btn,
  div[style*="background:var(--blue-lt)"][style*="border:1px solid var(--blue)"] .btn,
  div[style*="background:var(--blue-lt)"][style*="border:1px solid var(--blue)"] form,
  div[style*="background:var(--blue-lt)"][style*="border:1px solid var(--blue)"] form .btn {
    width: 100% !important;
    justify-content: center !important;
    margin-left: 0 !important;
  }

  /* Główny grid → jedna kolumna, prawa kolumna (sidebar) na górę */
  .container > div[style*="grid-template-columns:1fr 320px"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
  }

  .container > div[style*="grid-template-columns:1fr 320px"] > div:last-child {
    order: -1 !important;
  }

  /* Padding głównego kontenera */
  .container[style*="padding-top:40px"] {
    padding-top: 20px !important;
    padding-bottom: 32px !important;
  }

  /* Karty lewej kolumny — mniejszy padding */
  div[style*="background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r);padding:24px;margin-bottom:20px"] {
    padding: 16px !important;
  }

  /* Karty prawej kolumny */
  div[style*="background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r);padding:20px;margin-bottom:16px"],
  div[style*="background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r);padding:20px"] {
    padding: 14px !important;
  }

  /* Raport — stats grid 3 kolumny → 1 kolumna */
  div[style*="display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px"] {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 8px !important;
  }

  div[style*="display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px"] > div {
    padding: 10px 8px !important;
  }

  div[style*="display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px"] div[style*="font-size:1.6rem"] {
    font-size: 1.2rem !important;
  }

  /* Udostępnij — przyciski flex */
  div[style*="display:flex;gap:8px"] > a.btn-ghost,
  div[style*="display:flex;gap:8px"] > button.btn-ghost {
    font-size: .78rem !important;
    padding: 7px 8px !important;
  }

  /* Komentarz ogólny — formularz */
  div[style*="background:#F8FAFC;border:1px solid var(--gr-lt);border-radius:var(--r);padding:16px;margin-bottom:20px"] {
    padding: 12px !important;
  }

  /* Zdarzenia — wiersz */
  div[style*="display:flex;gap:14px;align-items:flex-start;padding:12px 0;border-bottom"] {
    gap: 10px !important;
  }
}

/* ── ≤600px ── */
@media (max-width: 600px) {

  /* Raport stats — na bardzo małych 1 kolumna */
  div[style*="display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:20px"] {
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  /* Iframe textarea — mniejszy font */
  #iframeCode {
    font-size: .65rem !important;
  }

  /* Nav breadcrumb — zawijaj */
  .page-hero nav {
    white-space: normal !important;
    line-height: 1.8 !important;
  }
}

/* ── ≤480px ── */
@media (max-width: 480px) {

  .page-hero h1 {
    font-size: 1rem !important;
  }

  /* Tagi w hero */
  .page-hero div[style*="display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px"] {
    gap: 4px !important;
  }

  /* Dokument — karta */
  a[href*="document"][style*="display:flex;align-items:center;gap:12px"] {
    padding: 12px !important;
    gap: 10px !important;
  }
}

/* ── Guest watch — kontener div[position:relative] full width ── */
@media (max-width: 768px) {

  .page-hero .container div[style*="flex-shrink:0"] > div[style*="position:relative"] {
    width: 100% !important;
  }

  .page-hero .container div[style*="flex-shrink:0"] > div[style*="position:relative"] > #guestWatchBtn {
    width: 100% !important;
    justify-content: center !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — wyniki konsultacji
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Hero — stos */
  .page-hero .container > div[style*="display:flex;justify-content:space-between;gap:20px"] {
    flex-direction: column !important;
    gap: 12px !important;
  }

  .page-hero .container > div[style*="display:flex;justify-content:space-between;gap:20px"] > .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Padding kontenera */
  .container[style*="padding-top:40px;padding-bottom:56px"] {
    padding-top: 20px !important;
    padding-bottom: 32px !important;
  }

  /* Stats grid — 2 kolumny */
  div[style*="grid-template-columns:repeat(auto-fit,minmax(150px,1fr))"] {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 10px !important;
    margin-bottom: 20px !important;
  }

  div[style*="grid-template-columns:repeat(auto-fit,minmax(150px,1fr))"] > div {
    padding: 14px 10px !important;
  }

  div[style*="grid-template-columns:repeat(auto-fit,minmax(150px,1fr))"] div[style*="font-size:2.2rem"] {
    font-size: 1.6rem !important;
  }

  /* Raport — padding */
  div[style*="background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r);padding:28px"] {
    padding: 16px !important;
  }

  /* Raport stats wewnętrzny grid */
  div[style*="grid-template-columns:repeat(auto-fit,minmax(140px,1fr))"] {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 8px !important;
  }

  div[style*="grid-template-columns:repeat(auto-fit,minmax(140px,1fr))"] div[style*="font-size:1.8rem"] {
    font-size: 1.4rem !important;
  }

  /* Raport — przyciski pobierania */
  div[style*="display:flex;gap:8px;flex-wrap:wrap;margin-bottom:8px"] .btn {
    flex: 1 !important;
    justify-content: center !important;
  }

  /* Komentarze — padding sekcji */
  div[style*="background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r);padding:24px;margin-bottom:28px"] {
    padding: 14px !important;
  }

  /* Komentarz — wiersz */
  div[style*="display:flex;gap:12px"] > div[style*="width:36px;height:36px;border-radius:50%"] {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    font-size: .72rem !important;
  }

  /* Meta komentarza — zawijaj */
  div[style*="display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px"] {
    gap: 5px !important;
  }

  /* Przycisk wróć — full width */
  .container[style*="padding-top:40px"] > a.btn-ghost {
    width: 100% !important;
    justify-content: center !important;
    display: flex !important;
  }

  /* "Raport w przygotowaniu" baner */
  div[style*="display:flex;align-items:center;gap:14px"] {
    gap: 10px !important;
    padding: 16px !important;
  }
}

@media (max-width: 480px) {

  /* Stats — 1 kolumna */
  div[style*="grid-template-columns:repeat(auto-fit,minmax(150px,1fr))"] {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  div[style*="grid-template-columns:repeat(auto-fit,minmax(150px,1fr))"] div[style*="font-size:2.2rem"] {
    font-size: 1.3rem !important;
  }

  /* Raport stats — 1 kolumna */
  div[style*="grid-template-columns:repeat(auto-fit,minmax(140px,1fr))"] {
    grid-template-columns: 1fr !important;
  }
}


/* ═══════════════════════════════════════
   MOBILE — zakończone konsultacje (lista)
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Nagłówek sekcji */
  .page-header {
    padding: 16px 0 !important;
  }

  .page-header h1 {
    font-size: 1.15rem !important;
  }

  /* Padding sekcji */
  .section-padded {
    padding: 20px 0 36px !important;
  }

  /* Karta — stos */
  .consultation-card {
    flex-direction: column !important;
    gap: 10px !important;
    padding: 14px !important;
  }

  /* Tytuł */
  .consultation-card .card-title {
    font-size: .9rem !important;
  }

  /* Meta */
  .consultation-card .card-meta {
    flex-wrap: wrap !important;
    gap: 6px !important;
    font-size: .78rem !important;
  }

  /* Przycisk wyniki — full width */
  .consultation-card .btn-ghost {
    width: 100% !important;
    justify-content: center !important;
    display: flex !important;
  }
}

@media (max-width: 480px) {

  .consultation-card {
    padding: 12px !important;
  }

  .consultation-card .card-title {
    font-size: .875rem !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — organizer: lista ankiet
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Nagłówek + przyciski → stos */
  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:24px"] {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
  }

  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:24px"] > div[style*="display:flex;gap:8px"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
  }

  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:24px"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Taby — scroll poziomy */
  div[style*="display:flex;gap:2px;margin-bottom:20px;border-bottom:2px solid var(--gr-lt)"] {
    overflow-x: auto !important;
    scrollbar-width: none !important;
    -webkit-overflow-scrolling: touch !important;
    flex-wrap: nowrap !important;
  }

  div[style*="display:flex;gap:2px;margin-bottom:20px;border-bottom:2px solid var(--gr-lt)"] > a {
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    padding: 10px 14px !important;
    font-size: .82rem !important;
  }

  /* Karta ankiety — stos */
  div[style*="background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r);padding:16px 20px;display:flex;align-items:center;gap:16px"] {
    flex-wrap: wrap !important;
    padding: 14px !important;
    gap: 12px !important;
  }

  /* Ikona ankiety — nie kurczy się */
  div[style*="width:40px;height:40px;border-radius:var(--r);background"] {
    flex-shrink: 0 !important;
  }

  /* Treść ankiety — pełna szerokość */
  div[style*="flex:1;min-width:0"] {
    flex: 1 1 calc(100% - 56px) !important;
  }

  /* Przyciski akcji — cały wiersz */
  div[style*="display:flex;gap:6px;flex-shrink:0"] {
    flex-shrink: unset !important;
    width: 100% !important;
    justify-content: flex-end !important;
    border-top: 1px solid var(--gr-lt) !important;
    padding-top: 10px !important;
    margin-top: 2px !important;
  }
}

@media (max-width: 480px) {

  /* Taby — mniejszy font */
  div[style*="display:flex;gap:2px;margin-bottom:20px;border-bottom:2px solid var(--gr-lt)"] > a {
    padding: 9px 10px !important;
    font-size: .78rem !important;
  }
}


/* ═══════════════════════════════════════
   MOBILE — organizer: utwórz ankietę
   (większość obsługuje wbudowany <style>)
═══════════════════════════════════════ */

@media (max-width: 600px) {

  /* Kontener max-width:720px */
  .container[style*="max-width:720px"] {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Pomoc kontekstowa — padding */
  div[style*="border-radius:var(--r);padding:16px 18px;margin-bottom:20px"] {
    padding: 14px !important;
  }

  /* Siatka skali w modalu (min/max/krok) */
  div[style*="grid-template-columns:1fr 1fr 1fr;gap:10px;margin-bottom:14px"] {
    grid-template-columns: 1fr 1fr 1fr !important;
    gap: 8px !important;
  }
}


/* ═══════════════════════════════════════
   MOBILE — organizer: wyniki ankiety
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Nagłówek — stos */
  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:10px"] {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 8px !important;
  }

  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:10px"] > .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Link prywatny — input + przycisk */
  div[style*="display:flex;gap:8px;align-items:center;margin-bottom:8px"] {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 6px !important;
  }

  div[style*="display:flex;gap:8px;align-items:center;margin-bottom:8px"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Nagłówek hero ankiety */
  div[style*="background:linear-gradient(135deg,#1E3A5F,#2563EB)"] {
    padding: 16px !important;
  }

  div[style*="background:linear-gradient(135deg,#1E3A5F,#2563EB)"] > div[style*="display:flex;justify-content:space-between"] {
    flex-direction: column !important;
    gap: 10px !important;
  }

  div[style*="background:linear-gradient(135deg,#1E3A5F,#2563EB)"] h1 {
    font-size: 1rem !important;
  }

  /* Wynik per pytanie — wykres + paski → stos */
  div[style*="display:grid;grid-template-columns:200px 1fr;gap:24px;align-items:center"] {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  div[style*="display:grid;grid-template-columns:200px 1fr;gap:24px;align-items:center"] canvas {
    max-height: 160px !important;
    max-width: 160px !important;
    margin: 0 auto !important;
    display: block !important;
  }

  /* Karta pytania */
  div[style*="background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r);padding:20px;margin-bottom:14px"] {
    padding: 14px !important;
  }

  /* Nagłówek pytania — stos */
  div[style*="display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;flex-wrap:wrap;gap:8px"] {
    gap: 6px !important;
  }

  /* Padding głównego kontenera */
  .container[style*="max-width:900px"] {
    padding-top: 20px !important;
    padding-bottom: 32px !important;
  }
}

@media (max-width: 480px) {

  div[style*="background:linear-gradient(135deg,#1E3A5F,#2563EB)"] h1 {
    font-size: .95rem !important;
  }
}


/* ═══════════════════════════════════════
   MOBILE — publiczny widok ankiety (show v2)
═══════════════════════════════════════ */

@media (max-width: 768px) {

  .container[style*="max-width:680px"] {
    padding-top: 20px !important;
    padding-bottom: 32px !important;
  }

  /* Blok pytania */
  .container[style*="max-width:680px"] div[style*="background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r);padding:20px;margin-bottom:14px"] {
    padding: 14px !important;
  }

  /* Gwiazdki */
  .container[style*="max-width:680px"] .star-rating {
    font-size: 1.5rem !important;
    gap: 4px !important;
  }

  /* Rating scale */
  .container[style*="max-width:680px"] div[style*="display:flex;align-items:center;justify-content:space-between;margin-bottom:8px"] {
    gap: 4px !important;
  }

  /* Przycisk wyślij */
  .container[style*="max-width:680px"] div[style*="text-align:center;margin-top:24px"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }
}

@media (max-width: 480px) {

  .container[style*="max-width:680px"] div[style*="display:flex;align-items:center;justify-content:space-between;margin-bottom:8px"] {
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 8px !important;
  }
}


/* ═══════════════════════════════════════
   MOBILE — organizer: edytuj ankietę
═══════════════════════════════════════ */

@media (max-width: 900px) {

  /* Grid ustawienia + builder → stos */
  div[style*="display:grid;grid-template-columns:340px 1fr;gap:20px"] {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  /* Ustawienia — sticky wyłączyć na mobile */
  div[style*="display:grid;grid-template-columns:340px 1fr;gap:20px"] > div[style*="position:sticky"] {
    position: static !important;
  }
}

@media (max-width: 768px) {

  /* Nagłówek edytora — stos */
  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:10px"] {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:10px"] > div[style*="display:flex;gap:8px"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
  }

  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:10px"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Dropdown "kopiuj z innej" — pełna szerokość */
  #copy-wrap {
    width: 100% !important;
  }

  #copy-wrap > button {
    width: 100% !important;
    justify-content: center !important;
  }

  #copy-menu {
    right: 0 !important;
    left: 0 !important;
    min-width: 0 !important;
    width: 100% !important;
  }

  /* Daty od/do → 1 kolumna */
  div[style*="display:grid;grid-template-columns:1fr 1fr;gap:8px"] {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  /* Padding ustawień */
  div[style*="background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r);padding:20px;position:sticky"] {
    padding: 16px !important;
  }

  /* Karta pytania (q-card) */
  .q-card {
    flex-wrap: wrap !important;
    padding: 12px !important;
    gap: 10px !important;
  }

  .q-card > div[style*="display:flex;align-items:center;gap:10px;flex:1"] {
    flex: 1 1 calc(100% - 80px) !important;
  }

  .q-card > div[style*="display:flex;gap:4px;flex-shrink:0"] {
    flex-shrink: 0 !important;
  }

  /* Modal pytania — padding */
  #q-modal > div {
    padding: 20px 16px !important;
    margin: 16px auto !important;
  }

  /* Modal: siatka min/max/krok → 3 kolumny zostawiamy, ale mniejsze inputy */
  #q-modal div[style*="grid-template-columns:1fr 1fr 1fr"] {
    gap: 8px !important;
  }

  /* Modal: przyciski zapisz/anuluj */
  #q-modal div[style*="display:flex;gap:10px"] {
    flex-direction: column !important;
  }

  #q-modal div[style*="display:flex;gap:10px"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Padding builder pytań */
  div[style*="background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r);padding:20px;margin-bottom:16px"] {
    padding: 14px !important;
  }

  /* Nagłówek buildera — "Pytania" + przycisk "Dodaj" */
  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:16px"] {
    gap: 8px !important;
  }
}

@media (max-width: 480px) {

  /* Modal pełny ekran */
  #q-modal {
    padding: 0 !important;
  }

  #q-modal > div {
    margin: 0 !important;
    border-radius: 0 !important;
    min-height: 100vh !important;
  }
}

/* ═══════════════════════════════════════
   FIX — edytuj ankietę: szerokość + daty
═══════════════════════════════════════ */

/* Kontener — pełna szerokość do 1240px */
div[style*="display:grid;grid-template-columns:340px 1fr;gap:20px;align-items:start"] {
  max-width: 1200px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
  box-sizing: border-box !important;
  width: 100% !important;
  grid-template-columns: 320px 1fr !important;
  gap: 20px !important;
}

/* Sidebar — nie może być szerszy niż kolumna */
div[style*="display:grid;grid-template-columns:340px 1fr;gap:20px;align-items:start"]
  > div[style*="position:sticky"] {
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

/* Daty Od/Do — jedna pod drugą żeby się mieściły w sidebarze */
div[style*="display:grid;grid-template-columns:340px 1fr;gap:20px;align-items:start"]
  div[style*="grid-template-columns:1fr 1fr;gap:8px"] {
  grid-template-columns: 1fr !important;
  gap: 0 !important;
}

/* Inputy datetime — pełna szerokość, nie przelewają */
div[style*="display:grid;grid-template-columns:340px 1fr;gap:20px;align-items:start"]
  div[style*="grid-template-columns:1fr 1fr;gap:8px"] input[type="datetime-local"] {
  width: 100% !important;
  font-size: .82rem !important;
  padding: 7px 8px !important;
  box-sizing: border-box !important;
}

/* Builder pytań — reszta miejsca */
div[style*="display:grid;grid-template-columns:340px 1fr;gap:20px;align-items:start"]
  > div:last-child {
  min-width: 0 !important;
}

/* ── ≤1280px ── */
@media (max-width: 1280px) {
  div[style*="display:grid;grid-template-columns:340px 1fr;gap:20px;align-items:start"] {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

/* ── ≤1100px ── */
@media (max-width: 1100px) {
  div[style*="display:grid;grid-template-columns:340px 1fr;gap:20px;align-items:start"] {
    grid-template-columns: 280px 1fr !important;
  }
}

/* ── ≤900px — stos ── */
@media (max-width: 900px) {
  div[style*="display:grid;grid-template-columns:340px 1fr;gap:20px;align-items:start"] {
    grid-template-columns: 1fr !important;
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  div[style*="display:grid;grid-template-columns:340px 1fr;gap:20px;align-items:start"]
    > div[style*="position:sticky"] {
    position: static !important;
  }

  /* Na mobile daty mogą wrócić do 2 kolumn bo jest więcej miejsca */
  div[style*="display:grid;grid-template-columns:340px 1fr;gap:20px;align-items:start"]
    div[style*="grid-template-columns:1fr 1fr;gap:8px"] {
    grid-template-columns: 1fr 1fr !important;
    gap: 8px !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — organizer: formularz raportu
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Panel body — jedna kolumna */
  .panel-body {
    grid-template-columns: 1fr !important;
  }

  .panel-sidebar {
    display: none !important;
  }

  /* Sekcja danych liczbowych — stos */
  div[style*="grid-template-columns:repeat(auto-fit,minmax(220px,1fr))"] {
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  /* Podgląd kafelków — 2 kolumny */
  #previewGrid {
    grid-template-columns: 1fr 1fr !important;
    gap: 6px !important;
  }

  /* Przyciski akcji — stos */
  div[style*="background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r);padding:20px;display:flex;gap:12px;flex-wrap:wrap"] {
    flex-direction: column !important;
    gap: 8px !important;
  }

  div[style*="background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r);padding:20px;display:flex;gap:12px;flex-wrap:wrap"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Przycisk Anuluj — nie margin-left:auto */
  div[style*="background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r);padding:20px;display:flex;gap:12px;flex-wrap:wrap"] a.btn-ghost {
    margin-left: 0 !important;
  }

  /* Sekcje CMS — mniejszy padding */
  .cms-section {
    padding: 16px !important;
  }

  /* Pliki — wiersz */
  div[style*="display:flex;align-items:center;gap:12px;padding:12px 14px;background:#F8FAFC"] {
    flex-wrap: wrap !important;
    gap: 8px !important;
  }

  div[style*="display:flex;align-items:center;gap:12px;padding:12px 14px;background:#F8FAFC"] > div[style*="flex:1"] {
    flex: 1 1 calc(100% - 80px) !important;
    min-width: 0 !important;
  }

  /* Baner opublikowany / szkic */
  div[style*="background:var(--green-bg);border:1px solid var(--green)"][style*="display:flex;align-items:center;gap:10px"] {
    flex-wrap: wrap !important;
    padding: 12px !important;
  }

  div[style*="background:#FFFBEB;border:1px solid #F59E0B"][style*="display:flex;align-items:center;gap:10px"] {
    flex-wrap: wrap !important;
    padding: 12px !important;
  }

  /* Panel content padding */
  .panel-content {
    padding: 16px !important;
  }
}

@media (max-width: 480px) {

  /* Kafelki danych liczbowych — mniejszy padding */
  div[style*="background:#F8FAFC;border:1px solid var(--gr-lt);border-radius:var(--r);padding:16px"] {
    padding: 12px !important;
  }

  /* Podgląd — mniejsze kafelki */
  #previewGrid > div {
    padding: 6px !important;
  }

  #previewGrid div[style*="font-size:1.3rem"] {
    font-size: 1.1rem !important;
  }
}


/* ═══════════════════════════════════════
   MOBILE — organizer: szczegóły raportu
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Header — stos */
  div[style*="display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:12px"] {
    flex-direction: column !important;
    gap: 10px !important;
  }

  div[style*="display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:12px"] > .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Stats grid — 1 kolumna */
  div[style*="display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:24px"] {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  div[style*="display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:24px"] > div {
    padding: 14px !important;
    flex-direction: row !important;
    justify-content: flex-start !important;
  }

  /* Eksport — stos */
  div[style*="display:flex;gap:10px;margin-bottom:24px;flex-wrap:wrap"] {
    flex-direction: column !important;
    gap: 8px !important;
  }

  div[style*="display:flex;gap:10px;margin-bottom:24px;flex-wrap:wrap"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Tabela komentarzy — scroll poziomy */
  div[style*="background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r-lg);overflow:hidden"] table {
    min-width: 520px !important;
  }

  div[style*="background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r-lg);overflow:hidden"] {
    overflow-x: auto !important;
  }

  /* Nagłówek tabeli — stos */
  div[style*="padding:14px 20px;border-bottom:1px solid var(--gr-lt);display:flex;align-items:center;justify-content:space-between"] {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 4px !important;
    padding: 12px 14px !important;
  }

  /* Breadcrumb */
  div[style*="display:flex;align-items:center;gap:8px;margin-bottom:20px;font-size:.85rem"] {
    flex-wrap: wrap !important;
  }
}

@media (max-width: 480px) {

  div[style*="display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:24px"] > div div[style*="font-size:1.6rem"] {
    font-size: 1.3rem !important;
  }
}


/* ═══════════════════════════════════════
   MOBILE — organizer: lista raportów
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Nagłówek — stos */
  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:12px"] {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
  }

  /* Karta konsultacji — nagłówek */
  div[style*="padding:16px 20px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;border-bottom:1px solid var(--gr-lt)"] {
    flex-direction: column !important;
    gap: 10px !important;
  }

  div[style*="padding:16px 20px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap;border-bottom:1px solid var(--gr-lt)"] > a.btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Statystyki + eksport — stos */
  div[style*="padding:16px 20px;display:flex;gap:20px;flex-wrap:wrap;align-items:flex-start"] {
    flex-direction: column !important;
    gap: 14px !important;
  }

  /* Statystyki kafelki — zawijaj */
  div[style*="display:flex;gap:10px;flex-wrap:wrap"] {
    flex-wrap: wrap !important;
    gap: 8px !important;
  }

  div[style*="display:flex;gap:10px;flex-wrap:wrap"] > div[style*="min-width:70px"] {
    flex: 1 1 calc(50% - 4px) !important;
    min-width: 0 !important;
  }

  /* Eksport — pełna szerokość, przyciski w rzędzie */
  div[style*="margin-left:auto;display:flex;flex-direction:column;gap:8px;align-items:flex-end"] {
    margin-left: 0 !important;
    align-items: stretch !important;
    width: 100% !important;
  }

  div[style*="margin-left:auto;display:flex;flex-direction:column;gap:8px;align-items:flex-end"] > div[style*="display:flex;gap:6px"] {
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
  }

  div[style*="margin-left:auto;display:flex;flex-direction:column;gap:8px;align-items:flex-end"] > div[style*="display:flex;gap:6px"] .btn {
    flex: 1 !important;
    justify-content: center !important;
    min-width: calc(50% - 3px) !important;
  }

  /* Wgrane pliki — align-items start */
  div[style*="display:flex;flex-direction:column;gap:4px;margin-top:4px"] {
    align-items: stretch !important;
  }

  div[style*="display:flex;flex-direction:column;gap:4px;margin-top:4px"] .btn {
    justify-content: flex-start !important;
  }

  /* Wpływ + dalsze kroki */
  div[style*="padding:0 20px 16px;display:flex;gap:16px;flex-wrap:wrap"] {
    flex-direction: column !important;
    padding: 0 14px 14px !important;
    gap: 10px !important;
  }

  /* Brak raportu — baner */
  div[style*="padding:16px 20px;display:flex;align-items:center;gap:12px"] {
    flex-wrap: wrap !important;
  }

  div[style*="padding:16px 20px;display:flex;align-items:center;gap:12px"] > a.btn {
    width: 100% !important;
    justify-content: center !important;
    margin-left: 0 !important;
  }
}

@media (max-width: 480px) {

  /* Kafelki stat — 2 kolumny */
  div[style*="display:flex;gap:10px;flex-wrap:wrap"] > div[style*="min-width:70px"] {
    flex: 1 1 calc(50% - 4px) !important;
  }

  div[style*="display:flex;gap:10px;flex-wrap:wrap"] > div[style*="min-width:70px"] div[style*="font-size:1.4rem"] {
    font-size: 1.2rem !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — organizer: zakończona konsultacja (ended-results partial)
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Stats grid — 2 kolumny */
  div[style*="display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px"] {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 8px !important;
  }

  div[style*="display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px"] div[style*="font-size:1.8rem"] {
    font-size: 1.4rem !important;
  }

  /* Komentarz — nagłówek */
  div[style*="padding:12px 16px;background:#FAFBFC;display:flex;gap:12px;align-items:flex-start;flex-wrap:wrap"] {
    gap: 8px !important;
    padding: 12px !important;
  }

  /* Decyzja — stos */
  div[style*="padding:10px 16px;border-top:1px solid var(--gr-lt);background:#F0FDF4"],
  div[style*="padding:10px 16px;border-top:1px solid var(--gr-lt);background:#FFFBEB"],
  div[style*="padding:10px 16px;border-top:1px solid var(--gr-lt);background:#FEF2F2"] {
    padding: 10px 12px !important;
  }
}

@media (max-width: 480px) {
  div[style*="display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:20px"] {
    grid-template-columns: 1fr 1fr !important;
  }
}


/* ═══════════════════════════════════════
   MOBILE — organizer: wydarzenia (events partial)
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Nagłówek — stos */
  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:12px"] {
    flex-direction: column !important;
    align-items: stretch !important;
  }

  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:12px"] > .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Formularz dodawania — 1 kolumna */
  div[id="addEventForm"] div[style*="grid-template-columns:1fr 1fr;gap:14px;margin-bottom:14px"],
  div[id^="editEventForm"] div[style*="grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px"] {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  /* Przyciski formularza */
  div[id="addEventForm"] div[style*="display:flex;gap:8px"],
  div[id^="editEventForm"] div[style*="display:flex;gap:8px"] {
    flex-direction: column !important;
  }

  div[id="addEventForm"] div[style*="display:flex;gap:8px"] .btn,
  div[id^="editEventForm"] div[style*="display:flex;gap:8px"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Wiersz zdarzenia */
  div[style*="display:flex;align-items:center;gap:14px;padding:14px 16px;background:#FAFBFC"] {
    flex-wrap: wrap !important;
    padding: 12px !important;
    gap: 10px !important;
  }

  div[style*="display:flex;align-items:center;gap:14px;padding:14px 16px;background:#FAFBFC"] > div[style*="flex:1"] {
    flex: 1 1 calc(100% - 100px) !important;
  }

  /* Przyciski akcji w wierszu */
  div[style*="display:flex;gap:6px;flex-shrink:0"] {
    flex-shrink: 0 !important;
  }
}


/* ═══════════════════════════════════════
   MOBILE — organizer: eksport (export partial)
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Filtry — 1 kolumna */
  div[style*="display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))"] {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  /* Przyciski eksportu — stos */
  div[style*="display:flex;gap:10px;flex-wrap:wrap"] > button[onclick*="triggerExport"] {
    width: 100% !important;
    justify-content: flex-start !important;
  }
}


/* ═══════════════════════════════════════
   MOBILE — organizer: odpowiedzi na pytania (question_answers partial)
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Nagłówek — stos */
  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;flex-wrap:wrap;gap:10px"] {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
  }

  /* Przyciski eksportu odpowiedzi */
  div[style*="display:flex;gap:8px;flex-wrap:wrap"] > a.btn {
    flex: 1 1 calc(50% - 4px) !important;
    justify-content: center !important;
  }

  /* Nagłówek pytania */
  div[style*="background:#F0F7FF;padding:12px 16px;border-bottom:1px solid #BFDBFE"] {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 6px !important;
    padding: 10px 12px !important;
  }

  /* Odpowiedź — formularz decyzji → stos */
  div[style*="padding:10px 16px;background:#FAFBFC;border-top:1px solid var(--gr-lt)"] > form {
    flex-direction: column !important;
    gap: 8px !important;
  }

  div[style*="padding:10px 16px;background:#FAFBFC;border-top:1px solid var(--gr-lt)"] > form > select,
  div[style*="padding:10px 16px;background:#FAFBFC;border-top:1px solid var(--gr-lt)"] > form > input,
  div[style*="padding:10px 16px;background:#FAFBFC;border-top:1px solid var(--gr-lt)"] > form > .btn {
    width: 100% !important;
    min-width: 0 !important;
    justify-content: center !important;
  }

  /* Treść odpowiedzi */
  div[style*="padding:12px 16px;display:flex;gap:12px;align-items:flex-start"] {
    padding: 10px 12px !important;
    gap: 10px !important;
  }
}


/* ═══════════════════════════════════════
   MOBILE — organizer: pytania konsultacji (questions partial)
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Przyciski "Przykłady" + "Dodaj pytanie" → stos */
  div[style*="display:flex;gap:8px"][style*="flex-wrap:wrap"] {
    flex-direction: column !important;
    gap: 6px !important;
    width: 100% !important;
  }

  div[style*="display:flex;gap:8px"][style*="flex-wrap:wrap"] > .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Panel przykładów */
  div[id="examplesPanel"] {
    padding: 14px !important;
  }

  div[id="examplesPanel"] div[style*="display:flex;gap:8px;margin-top:12px"] {
    flex-direction: column !important;
    gap: 6px !important;
  }

  div[id="examplesPanel"] div[style*="display:flex;gap:8px;margin-top:12px"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Formularz własnego pytania — typ + wymagane → stos */
  div[id="addQuestionForm"] div[style*="display:flex;gap:16px;align-items:center"] {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 10px !important;
  }

  div[id="addQuestionForm"] div[style*="display:flex;gap:16px;align-items:center"] > div {
    width: 100% !important;
  }

  div[id="addQuestionForm"] div[style*="display:flex;gap:16px;align-items:center"] select {
    width: 100% !important;
  }

  div[id="addQuestionForm"] div[style*="display:flex;gap:8px;margin-top:14px"] {
    flex-direction: column !important;
  }

  div[id="addQuestionForm"] div[style*="display:flex;gap:8px;margin-top:14px"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Wiersz pytania — przyciski */
  div[id^="question-row-"] div[style*="padding:12px 16px;background:#FAFBFC"] {
    padding: 10px 12px !important;
  }

  /* Formularz edycji pytania */
  div[id^="editQuestion"] div[style*="display:flex;gap:16px;align-items:center"] {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 8px !important;
  }

  div[id^="editQuestion"] div[style*="display:flex;gap:8px;margin-top:12px"] {
    flex-direction: column !important;
  }

  div[id^="editQuestion"] div[style*="display:flex;gap:8px;margin-top:12px"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }
}


/* ═══════════════════════════════════════
   MOBILE — organizer: komentarze i statystyki
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Panel-body → jedna kolumna */
  .panel-body {
    grid-template-columns: 1fr !important;
    display: block !important;
  }

  .panel-sidebar {
    display: none !important;
  }

  .panel-content {
    padding: 16px !important;
  }

  /* Taby → scroll poziomy */
  div[style*="display:flex;gap:2px;margin-bottom:24px;border-bottom:2px solid var(--gr-lt)"] {
    overflow-x: auto !important;
    scrollbar-width: none !important;
    flex-wrap: nowrap !important;
  }

  div[style*="display:flex;gap:2px;margin-bottom:24px;border-bottom:2px solid var(--gr-lt)"] > a {
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    padding: 10px 12px !important;
    font-size: .82rem !important;
  }

  /* Filtr komentarzy → stos */
  form[method="GET"] div,
  form[method="GET"] > div {
    min-width: 0 !important;
  }

  /* Karta komentarza */
  div[id^="comment-"] > div[style*="background:white;padding:12px 16px"] {
    padding: 12px !important;
    gap: 8px !important;
  }

  /* Przyciski zatwierdź/ukryj */
  div[style*="display:flex;gap:6px;flex-shrink:0;align-items:center"] {
    flex-shrink: 0 !important;
  }

  /* Formularz decyzji komentarza → stos */
  div[style*="padding:12px 16px;border-top:1px solid var(--gr-lt);background:#fff"] > form {
    flex-direction: column !important;
    gap: 8px !important;
  }

  div[style*="padding:12px 16px;border-top:1px solid var(--gr-lt);background:#fff"] > form > select,
  div[style*="padding:12px 16px;border-top:1px solid var(--gr-lt);background:#fff"] > form > input[type="text"],
  div[style*="padding:12px 16px;border-top:1px solid var(--gr-lt);background:#fff"] > form > .btn {
    width: 100% !important;
    min-width: 0 !important;
    justify-content: center !important;
  }

  /* Wykres ankiety — stos */
  div[style*="display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:center"] {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  div[style*="display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:center"] canvas {
    max-height: 180px !important;
    max-width: 180px !important;
    margin: 0 auto !important;
    display: block !important;
  }

  /* Nagłówek ankiety w tabelu */
  div[style*="background:linear-gradient(135deg,#1E3A5F,#2563EB);padding:16px 20px"] {
    padding: 14px !important;
  }

  div[style*="background:linear-gradient(135deg,#1E3A5F,#2563EB);padding:16px 20px"] > div[style*="display:flex;justify-content:space-between"] {
    flex-direction: column !important;
    gap: 10px !important;
  }

  div[style*="background:linear-gradient(135deg,#1E3A5F,#2563EB);padding:16px 20px"] h2 {
    font-size: .95rem !important;
  }
}

@media (max-width: 480px) {

  /* Filtry formularza */
  form[method="GET"][style*="display:flex;gap:10px;flex-wrap:wrap"] {
    flex-direction: column !important;
  }

  form[method="GET"][style*="display:flex;gap:10px;flex-wrap:wrap"] > div,
  form[method="GET"][style*="display:flex;gap:10px;flex-wrap:wrap"] select {
    width: 100% !important;
  }

  form[method="GET"][style*="display:flex;gap:10px;flex-wrap:wrap"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }
}


/* ═══════════════════════════════════════
   MOBILE — organizer: wizard tworzenia konsultacji
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Wizard hero — kroki */
  .wizard-hero > div[style*="max-width:800px"] {
    padding: 0 16px !important;
  }

  .wizard-hero h1 {
    font-size: 1rem !important;
  }

  /* Krok — ikona mniejsza */
  div[style*="display:flex;align-items:center;gap:0"] > div > div[style*="width:44px;height:44px;border-radius:50%"] {
    width: 36px !important;
    height: 36px !important;
    font-size: .85rem !important;
  }

  div[style*="display:flex;align-items:center;gap:0"] > div {
    min-width: 72px !important;
  }

  div[style*="display:flex;align-items:center;gap:0"] > div > div[style*="text-align:center"] > div:first-child {
    font-size: .72rem !important;
  }

  /* Typ konsultacji — 1 kolumna */
  div[style*="display:grid;grid-template-columns:1fr 1fr;gap:12px"] {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  /* Dostęp — 1 kolumna */
  div[style*="display:grid;grid-template-columns:1fr 1fr;gap:12px"]:last-of-type {
    grid-template-columns: 1fr !important;
  }

  /* Wizard sections */
  .wizard-section {
    padding: 16px !important;
  }

  /* Helpbox */
  div[style*="max-width:800px;margin:0 auto 40px"] .wizard-section {
    padding: 14px !important;
  }

  div[style*="max-width:800px;margin:0 auto 40px"] div[style*="display:flex;gap:8px;margin-top:8px"] {
    flex-direction: column !important;
    gap: 6px !important;
  }

  div[style*="max-width:800px;margin:0 auto 40px"] div[style*="display:flex;gap:8px;margin-top:8px"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }
}


/* ═══════════════════════════════════════
   MOBILE — organizer: edytuj konsultację
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Terminy — 1 kolumna */
  .cms-section div[style*="display:grid;grid-template-columns:1fr 1fr;gap:16px"] {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  /* Dostęp — stos */
  .cms-section div[style*="display:flex;gap:12px;flex-wrap:wrap"] {
    flex-direction: column !important;
    gap: 8px !important;
  }

  .cms-section div[style*="display:flex;gap:12px;flex-wrap:wrap"] > label {
    width: 100% !important;
  }

  /* Akcje — stos */
  div[style*="display:flex;gap:10px;justify-content:space-between;align-items:center"] {
    flex-direction: column !important;
    gap: 10px !important;
    align-items: stretch !important;
  }

  div[style*="display:flex;gap:10px;justify-content:space-between;align-items:center"] > div[style*="display:flex;gap:10px"] {
    flex-direction: column !important;
    gap: 8px !important;
  }

  div[style*="display:flex;gap:10px;justify-content:space-between;align-items:center"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Link prywatny — input + kopiuj */
  div[id="private-info-edit"] div[style*="display:flex;gap:6px;align-items:center"] {
    flex-direction: column !important;
    gap: 6px !important;
  }

  div[id="private-info-edit"] div[style*="display:flex;gap:6px;align-items:center"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }
}


/* ═══════════════════════════════════════
   MOBILE — organizer: lista konsultacji
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Filtry panel-card-head → stos */
  .panel-card-head > div[style*="display:flex;gap:8px"] {
    flex-direction: column !important;
    width: 100% !important;
  }

  .panel-card-head > div[style*="display:flex;gap:8px"] input,
  .panel-card-head > div[style*="display:flex;gap:8px"] select {
    width: 100% !important;
  }

  /* Tabela — scroll */
  .panel-card .table-wrap {
    overflow-x: auto !important;
  }

  .panel-card .data-table {
    min-width: 520px !important;
  }
}


/* ═══════════════════════════════════════
   MOBILE — organizer: raport (panel-body)
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Baner opublikowany */
  .panel-content > div[style*="background:var(--green-bg)"],
  .panel-content > div[style*="background:#FFFBEB;border:1px solid #F59E0B"] {
    flex-direction: column !important;
    padding: 12px !important;
    gap: 6px !important;
  }

  /* Przyciski zapisz/opublikuj */
  div[style*="background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r);padding:20px;display:flex;gap:12px;flex-wrap:wrap;align-items:center"] {
    flex-direction: column !important;
    gap: 8px !important;
  }

  div[style*="background:#fff;border:1px solid var(--gr-lt);border-radius:var(--r);padding:20px;display:flex;gap:12px;flex-wrap:wrap;align-items:center"] .btn {
    width: 100% !important;
    justify-content: center !important;
    margin-left: 0 !important;
  }
}


/* ═══════════════════════════════════════
   MOBILE — organizer: raport prosty (max-width:800px)
═══════════════════════════════════════ */

@media (max-width: 768px) {

  .container[style*="max-width:800px"][style*="padding-top:36px"] {
    padding-top: 20px !important;
    padding-bottom: 32px !important;
  }

  /* Dane liczbowe — 1 kolumna */
  .container[style*="max-width:800px"] div[style*="display:grid;grid-template-columns:1fr 1fr;gap:16px"] {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  /* Przyciski */
  .container[style*="max-width:800px"] div[style*="display:flex;gap:12px;flex-wrap:wrap"] {
    flex-direction: column !important;
    gap: 8px !important;
  }

  .container[style*="max-width:800px"] div[style*="display:flex;gap:12px;flex-wrap:wrap"] .btn {
    width: 100% !important;
    justify-content: center !important;
  }
}


/* ═══════════════════════════════════════
   MOBILE — organizer: show konsultacji
   (większość obsługuje wbudowany <style>,
    tu tylko uzupełnienia)
═══════════════════════════════════════ */

@media (max-width: 640px) {

  /* Invite row — stos */
  .invite-row {
    flex-direction: column !important;
    gap: 8px !important;
  }

  .invite-row > div {
    min-width: 0 !important;
    width: 100% !important;
  }

  .invite-row .btn {
    width: 100% !important;
    justify-content: center !important;
  }

  /* Tabela zaproszeń — scroll */
  .cms-section .table-wrap {
    overflow-x: auto !important;
  }

  .cms-section .data-table {
    min-width: 400px !important;
  }

  /* Panel info grid */
  .panel-info-grid {
    grid-template-columns: 1fr 1fr !important;
  }

  /* Zdarzenia w show */
  .event-row {
    flex-direction: column !important;
    gap: 8px !important;
    align-items: stretch !important;
  }

  /* Ankiety w show */
  .survey-org-row {
    flex-wrap: wrap !important;
    gap: 10px !important;
  }

  .survey-org-actions {
    width: 100% !important;
    display: flex !important;
    gap: 8px !important;
  }

  .survey-org-actions .btn {
    flex: 1 !important;
    justify-content: center !important;
  }

  /* Form zdarzeń — 1 kolumna */
  .event-form-grid {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  /* Eksport — stos */
  .export-btns {
    flex-direction: column !important;
    gap: 8px !important;
  }

  .export-btns .btn {
    width: 100% !important;
  }

  /* Filtry eksportu */
  .export-filters-grid {
    grid-template-columns: 1fr !important;
  }
}


/* ═══════════════════════════════════════
   FIX — action-bar i export-btns: centrowanie
═══════════════════════════════════════ */

@media (max-width: 640px) {

  /* Wszystkie przyciski w action-bar — wyśrodkowane */
  .action-bar .btn {
    justify-content: center !important;
    text-align: center !important;
    display: flex !important;
    align-items: center !important;
  }

  /* Przyciski eksportu z opisem (DOCX, ODT, PDF, CSV) */
  .export-btns .btn {
    justify-content: center !important;
    text-align: center !important;
  }

  /* Wewnętrzny div z tytułem i podtytułem przycisku eksportu */
  .export-btns .btn > div[style*="text-align:left"] {
    text-align: center !important;
  }

  /* Formularz zaproszeń — przycisk */
  .invite-row .btn {
    justify-content: center !important;
  }

  /* Panel PDF — przycisk Otwórz */
  div[style*="background:var(--green-bg)"] .btn {
    justify-content: center !important;
    width: 100% !important;
  }

  /* Ogólna reguła dla wszystkich btn w panel-content na mobile */
  .panel-content .btn-full,
  .panel-content .action-bar .btn,
  .panel-content .export-btns .btn {
    justify-content: center !important;
    text-align: center !important;
  }
}

/* ═══════════════════════════════════════
   MOBILE — admin: zgłoszenia zewnętrzne
═══════════════════════════════════════ */

@media (max-width: 768px) {

  /* Nagłówek + filtr → stos */
  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:24px"] {
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
  }

  /* Filtr status + przycisk → stos */
  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:24px"] form {
    flex-direction: column !important;
    gap: 8px !important;
  }

  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:24px"] form select,
  div[style*="display:flex;justify-content:space-between;align-items:center;margin-bottom:24px"] form button {
    width: 100% !important;
    box-sizing: border-box !important;
  }

  /* Wiersz zgłoszenia → stos */
  div[style*="display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap"] {
    flex-direction: column !important;
    gap: 12px !important;
  }

  /* Treść zgłoszenia — pełna szerokość */
  div[style*="display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap"] > div[style*="flex:1"] {
    width: 100% !important;
  }

  /* URL — zawijaj */
  div[style*="display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap"] a[style*="word-break:break-all"] {
    word-break: break-all !important;
    overflow-wrap: anywhere !important;
  }

  /* Akcje (select status + przyciski) → pełna szerokość */
  div[style*="display:flex;flex-direction:column;gap:6px;flex-shrink:0"] {
    flex-shrink: unset !important;
    width: 100% !important;
  }

  /* Formularz zmiany statusu → stos */
  div[style*="display:flex;flex-direction:column;gap:6px;flex-shrink:0"] form[style*="display:flex;gap:6px"] {
    flex-direction: column !important;
    gap: 8px !important;
  }

  div[style*="display:flex;flex-direction:column;gap:6px;flex-shrink:0"] form select,
  div[style*="display:flex;flex-direction:column;gap:6px;flex-shrink:0"] form button,
  div[style*="display:flex;flex-direction:column;gap:6px;flex-shrink:0"] > form button {
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 10px 14px !important;
    font-size: .875rem !important;
  }

  /* Padding wiersza */
  div[style*="padding:18px 22px;border-bottom:1px solid #F1F5F9"] {
    padding: 14px 16px !important;
  }
}

@media (max-width: 480px) {

  div[style*="padding:18px 22px;border-bottom:1px solid #F1F5F9"] {
    padding: 12px 14px !important;
  }

  /* Tytuł strony */
  h1[style*="font-size:1.3rem"] {
    font-size: 1.1rem !important;
  }
}