/* komputerowka-python - panel.css */
@import url('https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800&family=JetBrains+Mono:wght@400;600&display=swap');

#edz-panel *{box-sizing:border-box;margin:0;padding:0}
#edz-panel{font-family:'Nunito',sans-serif;color:#1a1a2e;width:100%;max-width:100%;padding:0 0 2rem;box-sizing:border-box}

/* -- Hero ------------------------------------------------------- */
.edz-hero{background:linear-gradient(135deg,var(--edz-hero-1,#0891b2) 0%,var(--edz-hero-2,#0e7490) 100%);border-radius:16px;padding:2rem;margin-bottom:1.5rem;position:relative;overflow:hidden}
.edz-hero::before{content:'';position:absolute;top:-40px;right:-40px;width:200px;height:200px;border-radius:50%;background:rgba(var(--edz-primary-rgb,8,145,178),.15)}
.edz-site-badge{font-size:11px;font-weight:700;letter-spacing:1px;color:var(--edz-accent,#06B6D4);text-transform:uppercase;margin-bottom:8px}
.edz-hero-title{font-size:22px;font-weight:800;color:#fff;margin-bottom:6px}
.edz-hero-sub{font-size:14px;color:rgba(255,255,255,.55);margin-bottom:1.25rem}

/* -- Terminal --------------------------------------------------- */
.edz-terminal{background:#0a0e1a;border-radius:8px;padding:12px 16px;border:1px solid rgba(var(--edz-primary-rgb,8,145,178),.3);font-family:'JetBrains Mono',monospace;font-size:13px;color:#a5f3fc}
.edz-t-bar{display:flex;gap:6px;margin-bottom:8px}
.edz-dot{width:10px;height:10px;border-radius:50%;display:inline-block}
.edz-t-line{color:var(--edz-primary,#0891b2)}
.edz-t-out{color:#34d399}
.edz-cursor{display:inline-block;width:8px;height:14px;background:var(--edz-primary,#0891b2);vertical-align:-2px;animation:edz-blink 1s step-end infinite}
@keyframes edz-blink{0%,100%{opacity:1}50%{opacity:0}}

/* -- Stats ------------------------------------------------------ */
.edz-stats-row{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:1rem}
.edz-stat{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:8px;padding:10px;text-align:center}
.edz-stat-num{font-size:20px;font-weight:800;color:#fff}
.edz-stat-lbl{font-size:11px;color:rgba(255,255,255,.45);margin-top:2px}

/* -- Auth ------------------------------------------------------- */
.edz-auth-tabs{display:flex;gap:0;margin-bottom:1rem;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}
.edz-auth-tab{flex:1;padding:10px;font-family:'Nunito',sans-serif;font-size:14px;font-weight:700;border:none;background:#f8fafc;color:#64748b;cursor:pointer;transition:background .15s}
.edz-auth-tab.edz-active{background:var(--edz-primary,#0891b2);color:#fff}
.edz-form-box{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:1.5rem}
.edz-field{margin-bottom:14px}
.edz-field label{display:block;font-size:13px;font-weight:700;color:#374151;margin-bottom:5px}
.edz-field input{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-family:'Nunito',sans-serif;font-size:14px;color:#1a1a2e;outline:none;transition:border-color .15s}
.edz-field input:focus{border-color:var(--edz-primary,#0891b2);box-shadow:0 0 0 3px rgba(var(--edz-primary-rgb,8,145,178),.1)}
.edz-fields-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.edz-btn-primary{width:100%;padding:12px;background:var(--edz-primary,#0891b2);color:#fff;border:none;border-radius:8px;font-family:'Nunito',sans-serif;font-size:15px;font-weight:700;cursor:pointer;transition:background .15s;margin-top:4px}
.edz-btn-primary:hover{background:var(--edz-primary-dark,#0e7490)}

/* -- Message ---------------------------------------------------- */
.edz-msg{padding:10px 14px;border-radius:8px;font-size:13px;font-weight:600;margin-bottom:1rem}
.edz-msg.edz-ok{background:#d1fae5;color:#065f46;border:1px solid #6ee7b7}
.edz-msg.edz-err{background:#fee2e2;color:#7f1d1d;border:1px solid #fca5a5}

/* -- Top bar ---------------------------------------------------- */
.edz-topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;border-bottom:1px solid #e2e8f0;padding-bottom:.75rem;gap:8px;flex-wrap:wrap}
.edz-tabs{display:flex;gap:6px}
.edz-tab{font-family:'Nunito',sans-serif;font-size:13px;font-weight:600;color:#64748b;cursor:pointer;padding:6px 12px;border-radius:6px;border:none;background:transparent;transition:background .15s}
.edz-tab.edz-active{background:var(--edz-primary-tint,#cffafe);color:var(--edz-primary-darker,#0e7490)}
.edz-logout-btn{font-family:'Nunito',sans-serif;font-size:12px;font-weight:600;color:#64748b;background:transparent;border:1px solid #e2e8f0;border-radius:6px;padding:5px 12px;cursor:pointer}
.edz-logout-btn:hover{background:#fee2e2;color:#7f1d1d;border-color:#fca5a5}

/* -- Course cards ----------------------------------------------- */
.edz-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-bottom:1rem}
.edz-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:14px;cursor:pointer;transition:border-color .2s}
.edz-card:hover{border-color:rgba(var(--edz-primary-rgb,8,145,178),.5)}
.edz-card.edz-selected{border:2px solid var(--edz-primary,#0891b2)}
.edz-card-icon{font-size:24px;margin-bottom:8px}
.edz-card-klass{font-size:11px;font-weight:700;color:var(--edz-primary,#0891b2);text-transform:uppercase;letter-spacing:.5px}
.edz-card-name{font-size:14px;font-weight:700;color:#1a1a2e;margin:3px 0 4px}
.edz-card-desc{font-size:12px;color:#64748b;line-height:1.5}
.edz-card-prog{margin-top:8px}
.edz-prog-row{display:flex;justify-content:space-between;font-size:11px;color:#64748b;margin-bottom:3px}
.edz-bar-wrap{background:#f1f5f9;border-radius:6px;height:6px;overflow:hidden}
.edz-bar{height:6px;border-radius:6px;background:linear-gradient(90deg,var(--edz-primary,#0891b2),var(--edz-accent,#06B6D4));transition:width .4s}
.edz-badge{display:inline-block;font-size:10px;font-weight:700;padding:3px 8px;border-radius:20px;margin-top:6px}
.edz-badge-done{background:#d1fae5;color:#065f46}
.edz-badge-active{background:var(--edz-primary-tint,#cffafe);color:var(--edz-primary-darker,#0e7490)}
.edz-badge-locked{background:#f1f5f9;color:#94a3b8}

/* -- Course detail ---------------------------------------------- */
.edz-detail{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:1.25rem;margin-top:.5rem}
.edz-detail-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}
.edz-detail-title{font-size:16px;font-weight:800;color:#1a1a2e}
.edz-detail-klass{font-size:12px;color:var(--edz-primary,#0891b2);font-weight:700;margin-top:2px}
.edz-lessons{display:flex;flex-direction:column;gap:8px}
.edz-lesson{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:8px;border:1px solid #e2e8f0;cursor:pointer;transition:background .15s}
.edz-lesson:hover:not(.edz-l-locked){background:#f8fafc}
.edz-lesson.edz-l-locked{cursor:default;opacity:.6}
.edz-l-num{width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0}
.edz-l-done .edz-l-num{background:#d1fae5;color:#065f46}
.edz-l-active .edz-l-num{background:var(--edz-primary-tint,#cffafe);color:var(--edz-primary-darker,#0e7490)}
.edz-l-locked .edz-l-num{background:#f1f5f9;color:#94a3b8}
.edz-l-text{flex:1}
.edz-l-name{font-size:13px;font-weight:700;color:#1a1a2e}
.edz-l-meta{font-size:11px;color:#64748b;margin-top:2px}
.edz-l-xp{font-size:11px;font-weight:700;color:var(--edz-primary,#0891b2)}
.edz-continue-btn{background:var(--edz-primary,#0891b2);color:#fff;border:none;border-radius:8px;padding:10px 18px;font-family:'Nunito',sans-serif;font-size:13px;font-weight:700;cursor:pointer;margin-top:1rem;transition:background .15s}
.edz-continue-btn:hover{background:var(--edz-primary-dark,#0e7490)}

/* -- Progress tab ----------------------------------------------- */
.edz-prog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:1.25rem}
.edz-stat-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px;text-align:center}
.edz-stat-card .edz-stat-num{font-size:22px;font-weight:800;color:#1a1a2e}
.edz-stat-card .edz-stat-lbl{font-size:11px;color:#64748b;margin-top:2px}
.edz-prog-course{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px;margin-bottom:8px}
.edz-prog-course-row{display:flex;justify-content:space-between;font-size:13px;font-weight:700;color:#1a1a2e;margin-bottom:6px}
.edz-prog-course-pct{font-size:12px;color:#64748b;font-weight:400}

/* -- Badges tab ------------------------------------------------- */
.edz-badges-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}
.edz-badge-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:14px;text-align:center;transition:opacity .2s}
.edz-badge-card.edz-locked{opacity:.4}
.edz-badge-icon{font-size:28px;margin-bottom:6px}
.edz-badge-name{font-size:13px;font-weight:700;color:#1a1a2e}
.edz-badge-desc{font-size:11px;color:#64748b;margin-top:3px;line-height:1.4}
.edz-earned-pill{display:inline-block;font-size:10px;font-weight:700;padding:3px 8px;border-radius:20px;margin-top:8px;background:#d1fae5;color:#065f46}

/* -- Spinner ---------------------------------------------------- */
.edz-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:edz-spin .6s linear infinite;vertical-align:-3px;margin-right:6px}
@keyframes edz-spin{to{transform:rotate(360deg)}}

/* -- Responsive ------------------------------------------------- */
@media(max-width:560px){
    .edz-fields-row{grid-template-columns:1fr}
    .edz-stats-row,.edz-prog-grid{grid-template-columns:repeat(3,1fr)}
    .edz-cards{grid-template-columns:1fr 1fr}
    .edz-topbar{flex-wrap:nowrap}
    .edz-tabs{gap:2px;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;flex:1 1 auto;min-width:0}
    .edz-tab{padding:6px 8px;font-size:12px;flex-shrink:0;white-space:nowrap}
    .edz-logout-btn{flex-shrink:0}
    .edz-lang-switch{gap:6px;margin-bottom:12px;padding-bottom:10px}
    .edz-lang-btn{padding:8px 14px;font-size:13px}
    .edz-canvas-actions{margin-left:0;width:100%}
    .edz-canvas-tool{width:30px;height:30px;font-size:13px}
}
@media(max-width:380px){
    .edz-cards{grid-template-columns:1fr}
    .edz-lang-btn{padding:7px 12px;font-size:12px}
}

/* -- Ekran lekcji ----------------------------------------------- */
#edz-lesson-screen{padding-bottom:2rem}

.edz-lesson-nav{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;flex-wrap:wrap;gap:8px}
.edz-back-btn{font-family:'Nunito',sans-serif;font-size:13px;font-weight:700;color:var(--edz-primary,#0891b2);background:transparent;border:1.5px solid var(--edz-primary-tint,#cffafe);border-radius:8px;padding:7px 14px;cursor:pointer;transition:background .15s}
.edz-back-btn:hover{background:var(--edz-primary-tint,#cffafe)}
.edz-lesson-nav-info{display:flex;align-items:center;gap:10px}
#edz-lesson-klass-badge{font-size:11px;font-weight:700;color:var(--edz-primary,#0891b2);background:var(--edz-primary-tint,#cffafe);border-radius:20px;padding:3px 10px}
#edz-lesson-counter{font-size:12px;color:#64748b;font-weight:600}

.edz-lesson-header{display:flex;align-items:flex-start;gap:14px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;margin-bottom:1rem}
.edz-lesson-icon-wrap{font-size:36px;line-height:1;flex-shrink:0}
.edz-lesson-title{font-size:20px;font-weight:800;color:#1a1a2e;margin-bottom:6px}
.edz-lesson-meta-row{display:flex;gap:8px}
#edz-lesson-time-badge,#edz-lesson-xp-badge{font-size:12px;font-weight:700;padding:3px 10px;border-radius:20px}
#edz-lesson-time-badge{background:#f0fdf4;color:#166534}
#edz-lesson-xp-badge{background:#fef3c7;color:#92400e}

.edz-lesson-body{display:flex;flex-direction:column;gap:1rem}

.edz-lesson-intro{font-size:15px;line-height:1.7;color:#374151;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem}

.edz-lesson-steps-box{background:#f0f9ff;border:1px solid #bae6fd;border-radius:12px;padding:1.25rem}
.edz-lesson-steps-title{font-size:13px;font-weight:800;color:#0369a1;margin-bottom:10px}
.edz-lesson-steps{padding-left:1.4rem;display:flex;flex-direction:column;gap:8px}
.edz-lesson-steps li{font-size:14px;line-height:1.6;color:#1e3a5f}

.edz-lesson-code-box{background:#0a0e1a;border-radius:12px;overflow:hidden;border:1px solid rgba(var(--edz-primary-rgb,8,145,178),.3)}
.edz-lesson-code-header{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-bottom:1px solid rgba(255,255,255,.08)}
.edz-code-label{font-size:12px;font-weight:700;color:#a5f3fc;font-family:'JetBrains Mono',monospace}
.edz-copy-btn{font-family:'Nunito',sans-serif;font-size:12px;font-weight:700;color:#94a3b8;background:transparent;border:1px solid rgba(255,255,255,.15);border-radius:6px;padding:4px 10px;cursor:pointer;transition:color .15s}
.edz-copy-btn:hover{color:#fff;border-color:rgba(255,255,255,.35)}
.edz-code-block{margin:0;padding:16px;overflow-x:auto;background:#0a0e1a !important}
.edz-code-block code,#edz-lesson-code{font-family:'JetBrains Mono',monospace;font-size:13px;line-height:1.8;color:#e2e8f0 !important;white-space:pre;background:transparent !important;background-color:transparent !important;padding:0 !important;border:none !important}

/* ======= Platno online (mini-Paint) - kurs "Paint" ======= */
.edz-canvas-box{background:#ffffff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem}
.edz-canvas-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.edz-canvas-label{font-size:13px;font-weight:800;color:var(--edz-primary,#0891b2)}
.edz-canvas-help-btn{width:22px;height:22px;border-radius:50%;border:1px solid #cbd5e1;background:#f8fafc;color:#64748b;font-weight:800;font-size:12px;cursor:pointer;line-height:1}
.edz-canvas-help{font-size:13px;color:#475569;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;padding:10px 12px;margin-bottom:12px}
.edz-canvas-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid #e2e8f0}
.edz-canvas-tools{display:flex;flex-wrap:wrap;gap:4px}
.edz-canvas-tool{width:34px;height:34px;border-radius:8px;border:1px solid #e2e8f0;background:#f8fafc;color:#1e293b;font-size:16px;line-height:1;font-family:'Nunito',-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-weight:800;cursor:pointer;transition:background .15s,border-color .15s,color .15s}
.edz-canvas-tool:hover{background:var(--edz-primary-tint,#cffafe)}
.edz-canvas-tool.edz-active{background:var(--edz-primary,#0891b2);border-color:var(--edz-primary,#0891b2);color:#fff}
.edz-canvas-options{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.edz-canvas-options input[type=color]{width:34px;height:34px;border:1px solid #e2e8f0;border-radius:8px;padding:2px;cursor:pointer;background:#fff}
.edz-canvas-size-lbl,.edz-canvas-shape-lbl{font-size:12px;font-weight:700;color:#64748b;display:flex;align-items:center;gap:6px}
.edz-canvas-actions{display:flex;gap:6px;margin-left:auto;flex-wrap:wrap}
.edz-canvas-action-btn{font-family:'Nunito',sans-serif;font-size:12px;font-weight:700;color:#334155;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:8px;padding:7px 12px;cursor:pointer;transition:background .15s}
.edz-canvas-action-btn:hover{background:#e2e8f0}
.edz-canvas-save-btn{background:var(--edz-primary,#0891b2);border-color:var(--edz-primary,#0891b2);color:#fff}
.edz-canvas-save-btn:hover{background:var(--edz-primary-dark,#0e7490)}
.edz-canvas-stage{overflow-x:auto;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;padding:8px;display:flex;justify-content:center}
#edz-canvas-el{background:#ffffff;border-radius:4px;box-shadow:0 1px 3px rgba(0,0,0,.08);touch-action:none;cursor:crosshair;max-width:100%;height:auto}

/* -- Narzedzia edycji zdjec (canvas_mode='photo', kurs "GIMP") --- */
.edz-canvas-photo-tools{display:flex;flex-direction:column;gap:10px;margin-bottom:10px;padding:10px 12px;background:#ecfeff;border:1px solid #a5f3fc;border-radius:10px}
.edz-canvas-photo-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.edz-canvas-upload-lbl{font-family:'Nunito',sans-serif;font-size:12px;font-weight:700;color:#fff;background:var(--edz-primary,#0891b2);border-radius:8px;padding:8px 14px;cursor:pointer;transition:background .15s}
.edz-canvas-upload-lbl:hover{background:var(--edz-primary-dark,#0e7490)}
.edz-canvas-filters-row{gap:16px}
.edz-canvas-filter-lbl{font-size:12px;font-weight:700;color:#0e7490;display:flex;align-items:center;gap:6px}
.edz-canvas-filter-lbl input[type=range]{width:100px}

.edz-lesson-task-box{background:#fefce8;border:1px solid #fde68a;border-radius:12px;padding:1.25rem}
.edz-task-label{font-size:13px;font-weight:800;color:#92400e;margin-bottom:8px}
.edz-task-text{font-size:14px;line-height:1.7;color:#78350f}

.edz-lesson-footer{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:1.5rem;padding-top:1.25rem;border-top:1px solid #e2e8f0}
.edz-done-info{font-size:13px;color:#065f46;background:#d1fae5;border-radius:8px;padding:8px 16px;font-weight:600}
.edz-complete-btn{width:100%;max-width:400px;padding:14px;background:linear-gradient(135deg,var(--edz-primary,#0891b2),#4f46e5);color:#fff;border:none;border-radius:10px;font-family:'Nunito',sans-serif;font-size:15px;font-weight:800;cursor:pointer;transition:opacity .15s}
.edz-complete-btn:hover{opacity:.9}
.edz-next-btn{width:100%;max-width:400px;padding:12px;background:#fff;color:var(--edz-primary,#0891b2);border:2px solid var(--edz-primary,#0891b2);border-radius:10px;font-family:'Nunito',sans-serif;font-size:14px;font-weight:700;cursor:pointer;transition:background .15s}
.edz-next-btn:hover{background:var(--edz-primary-tint,#cffafe)}

/* ======= Zablokowane kursy ======= */
.edz-card-locked{position:relative;opacity:.85}
.edz-lock-overlay{position:absolute;top:10px;right:10px;font-size:18px;background:#fff;border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 8px rgba(0,0,0,.12)}
.edz-access-note{font-size:11px;color:#92400e;margin-top:6px;font-weight:600}

.edz-detail-locked{text-align:center;padding:48px 24px}
.edz-lock-big{font-size:48px;margin-bottom:16px}
.edz-detail-locked h3{font-size:18px;font-weight:800;color:#1a1a2e;margin-bottom:8px}
.edz-detail-locked p{font-size:14px;color:#64748b;margin-bottom:20px}

/* ======= Modal odblokowania ======= */
.edz-modal-overlay{position:fixed;inset:0;background:rgba(15,23,42,.55);display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px}
.edz-modal-box{background:#fff;border-radius:16px;padding:32px;max-width:420px;width:100%;position:relative;text-align:center;box-shadow:0 24px 60px rgba(0,0,0,.25)}
.edz-modal-close{position:absolute;top:14px;right:16px;background:none;border:none;font-size:24px;color:#94a3b8;cursor:pointer;line-height:1}
.edz-modal-close:hover{color:#1a1a2e}
.edz-modal-icon{font-size:36px;margin-bottom:12px}
#edz-unlock-title{font-size:18px;font-weight:800;color:#1a1a2e;margin-bottom:6px}
.edz-unlock-price{font-size:15px;font-weight:700;color:var(--edz-primary,#0891b2);margin-bottom:20px}

.edz-unlock-tabs{display:flex;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;margin-bottom:20px}
.edz-unlock-tab{flex:1;padding:10px;font-family:'Nunito',sans-serif;font-size:13px;font-weight:700;border:none;background:#f8fafc;color:#64748b;cursor:pointer}
.edz-unlock-tab.edz-active{background:var(--edz-primary,#0891b2);color:#fff}

.edz-unlock-panel p{font-size:13px;color:#64748b;margin-bottom:16px;line-height:1.5}
.edz-btn-checkout{width:100%;padding:13px;background:var(--edz-primary,#0891b2);color:#fff;border:none;border-radius:8px;font-family:'Nunito',sans-serif;font-size:14px;font-weight:700;cursor:pointer}
.edz-btn-checkout:hover{background:var(--edz-primary-dark,#0e7490)}
.edz-btn-checkout:disabled{opacity:.6;cursor:not-allowed}

.edz-code-field{width:100%;padding:12px;border:1px solid #d1d5db;border-radius:8px;font-family:'Nunito',sans-serif;font-size:15px;text-align:center;text-transform:uppercase;letter-spacing:1px;margin-bottom:14px;outline:none}
.edz-code-field:focus{border-color:var(--edz-primary,#0891b2);box-shadow:0 0 0 3px rgba(var(--edz-primary-rgb,8,145,178),.1)}

/* ======= Edytor blokowy (Scratch-like) ======= */
#edz-block-editor-screen{padding-bottom:2rem}
.edz-be-intro{font-size:14px;line-height:1.65;color:#374151;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1rem 1.25rem;margin-bottom:1rem}

.edz-be-wrap{display:grid;grid-template-columns:160px 1fr 220px;gap:14px}
.edz-be-col{display:flex;flex-direction:column;gap:8px}
.edz-be-h2{font-size:12px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}

.edz-be-palette{display:flex;flex-direction:column;gap:8px;position:sticky;top:16px;align-self:flex-start}
.edz-be-block{padding:10px 12px;border-radius:8px;font-size:13px;font-weight:700;cursor:grab;user-select:none;border:1px solid transparent}
.edz-be-block:active{cursor:grabbing}
.edz-be-block[data-cat="move"]{background:#dbeafe;color:#1e40af}
.edz-be-block[data-cat="loop"]{background:#dcfce7;color:#166534}

.edz-be-hint-btn{padding:8px 10px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;font-family:'Nunito',sans-serif;font-size:12px;font-weight:700;color:var(--edz-primary,#0891b2);cursor:pointer}
.edz-be-hint{font-size:12px;color:#92400e;background:#fefce8;border:1px solid #fde68a;border-radius:8px;padding:10px 12px;line-height:1.5}

.edz-be-workspace{min-height:320px;max-height:520px;overflow-y:auto;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:6px;transition:background .12s ease,border-color .12s ease}
.edz-be-workspace-over{background:var(--edz-primary-tint,#cffafe);border-color:var(--edz-primary,#0891b2)}
.edz-be-empty{font-size:13px;color:#94a3b8;text-align:center;margin-top:130px}
.edz-be-drag-ghost{position:absolute;z-index:99999;pointer-events:none;padding:10px 12px;border-radius:8px;font-size:13px;font-weight:700;background:var(--edz-primary,#0891b2);color:#fff;box-shadow:0 8px 20px rgba(0,0,0,.25);opacity:.92}
.edz-be-seq-block{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;border-radius:8px;font-size:13px;font-weight:700;border:1px solid transparent}
.edz-be-seq-block[data-cat="move"]{background:#dbeafe;color:#1e40af}
.edz-be-seq-block[data-cat="loop"]{background:#dcfce7;color:#166534}
.edz-be-rm{background:none;border:none;cursor:pointer;color:inherit;opacity:.55;font-size:16px;line-height:1;padding:2px}
.edz-be-rm:hover{opacity:1}

.edz-be-stage-col{align-items:center}
.edz-be-grid-wrap{display:flex;justify-content:center;width:100%}
.edz-be-grid{position:relative;background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden}
.edz-be-obstacle{position:absolute;background:#fee2e2;border:1px solid #fca5a5}
.edz-be-goal{position:absolute;display:flex;align-items:center;justify-content:center;font-size:16px}
.edz-be-cat{position:absolute;font-size:20px;display:flex;align-items:center;justify-content:center;transition:left .4s ease,top .4s ease,transform .4s ease}

.edz-be-run-btn{width:100%;padding:10px;background:var(--edz-primary,#0891b2);color:#fff;border:none;border-radius:8px;font-family:'Nunito',sans-serif;font-size:13px;font-weight:700;cursor:pointer}
.edz-be-run-btn:hover{background:var(--edz-primary-dark,#0e7490)}
.edz-be-run-btn:disabled{opacity:.6;cursor:not-allowed}
.edz-be-reset-btn{width:100%;padding:9px;background:#fff;color:#64748b;border:1px solid #e2e8f0;border-radius:8px;font-family:'Nunito',sans-serif;font-size:12px;font-weight:700;cursor:pointer}
.edz-be-reset-btn:hover{background:#f8fafc}
.edz-be-msg{font-size:12px;color:#64748b;text-align:center;min-height:32px;line-height:1.4}

@media(max-width:760px){
    .edz-be-wrap{grid-template-columns:1fr}
}

/* ======= Arkusz kalkulacyjny (interaktywne cwiczenia Excel) ======= */
.edz-sheet-box{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:14px;margin-top:14px}
.edz-sheet-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;gap:10px;flex-wrap:wrap}
.edz-sheet-scroll{overflow-x:auto;border:1px solid #e2e8f0;border-radius:8px}
.edz-sheet-table{border-collapse:collapse;width:100%}
.edz-sheet-table th{background:#f1f5f9;color:#64748b;font-size:12px;font-weight:700;padding:6px 4px;border:1px solid #e2e8f0;text-align:center;min-width:76px}
.edz-sheet-table td{border:1px solid #e2e8f0;padding:0}
.edz-sheet-input{width:100%;min-width:76px;box-sizing:border-box;border:none;padding:7px 8px;font-size:13px;font-family:'Nunito',sans-serif;text-align:left;outline:none;background:transparent}
.edz-sheet-input:focus{background:#eff6ff;box-shadow:inset 0 0 0 2px var(--edz-primary,#0891b2)}
.edz-sheet-locked{background:#f8fafc;color:#334155;font-weight:700;cursor:default}
.edz-sheet-corner{background:#e2e8f0!important}

/* ======= Przelacznik jezyka (Python/C++/Word/Excel/Linux/...) =======
   Liczba kategorii rosnie z czasem (obecnie kilkanascie) - zamiast
   .edz-lang-switch{display:flex} bez zawijania (co na waskich ekranach
   telefonu powodowalo, ze czesc przyciskow "wypadala" poza widoczny
   obszar i byla calkowicie niedostepna), pasek jest teraz POZIOMO
   PRZEWIJALNY na kazdej szerokosci ekranu - wszystkie kategorie sa
   zawsze osiagalne przesunieciem palcem w bok, tak jak w typowych
   aplikacjach mobilnych z wieloma zakladkami. */
.edz-lang-switch{
    display:flex;
    gap:8px;
    margin-bottom:16px;
    border-bottom:1px solid #e2e8f0;
    padding-bottom:14px;
    overflow-x:auto;
    overflow-y:hidden;
    flex-wrap:nowrap;
    -webkit-overflow-scrolling:touch;
    scroll-snap-type:x proximity;
    scrollbar-width:thin;
    scrollbar-color:#67e8f9 transparent;
}
.edz-lang-switch::-webkit-scrollbar{height:6px}
.edz-lang-switch::-webkit-scrollbar-track{background:transparent}
.edz-lang-switch::-webkit-scrollbar-thumb{background:#67e8f9;border-radius:10px}
.edz-lang-btn{padding:9px 18px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;font-family:'Nunito',sans-serif;font-size:14px;font-weight:700;color:#64748b;cursor:pointer;transition:background .15s,color .15s;flex-shrink:0;white-space:nowrap;scroll-snap-align:start}
.edz-lang-btn:hover{background:#f1f5f9}
.edz-lang-btn.edz-active{background:var(--edz-primary,#0891b2);color:#fff;border-color:var(--edz-primary,#0891b2)}

.edz-prog-lang-label{font-size:13px;font-weight:800;color:var(--edz-primary,#0891b2);text-transform:uppercase;letter-spacing:.5px;margin:18px 0 8px}
.edz-prog-lang-label:first-of-type{margin-top:0}

/* ======= Edytor kodu ucznia (Pyodide) ======= */
.edz-run-box{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;margin-top:1rem}
.edz-run-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}
.edz-run-label{font-size:13px;font-weight:800;color:#374151}
.edz-run-btn{background:#10b981;color:#fff;border:none;border-radius:8px;padding:9px 18px;font-family:'Nunito',sans-serif;font-size:13px;font-weight:700;cursor:pointer;display:inline-flex;align-items:center}
.edz-run-btn:hover{background:#059669}
.edz-run-btn:disabled{opacity:.65;cursor:not-allowed}
.edz-run-spinner{display:inline-block;width:13px;height:13px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:edz-run-spin .6s linear infinite;vertical-align:-2px;margin-right:6px}
@keyframes edz-run-spin{to{transform:rotate(360deg)}}

.edz-run-editor{width:100%;min-height:160px;background:#0a0e1a;color:#e2e8f0;border:1px solid rgba(var(--edz-primary-rgb,8,145,178),.3);border-radius:8px;padding:14px;font-family:'JetBrains Mono',monospace;font-size:13px;line-height:1.7;resize:vertical;outline:none;white-space:pre}
.edz-run-editor:focus{border-color:var(--edz-primary,#0891b2);box-shadow:0 0 0 3px rgba(var(--edz-primary-rgb,8,145,178),.1)}

.edz-run-output-box{margin-top:14px}
.edz-run-output-label{font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}
.edz-run-output{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:12px 14px;font-family:'JetBrains Mono',monospace;font-size:13px;line-height:1.6;color:#1a1a2e;white-space:pre-wrap;word-break:break-word;margin:0;max-height:220px;overflow-y:auto}

.edz-run-result{margin-top:12px;padding:10px 16px;border-radius:8px;font-size:13px;font-weight:700}
.edz-run-result.edz-run-ok{background:#d1fae5;color:#065f46}
.edz-run-result.edz-run-err{background:#fee2e2;color:#7f1d1d}

/* ======= Quiz obrazkowy (test koncowy) ======= */
.edz-qi-progress{display:flex;justify-content:center;gap:8px;margin:4px 0 18px}
.edz-qi-dot{width:10px;height:10px;border-radius:50%;background:#e2e8f0;display:inline-block;transition:background .15s}
.edz-qi-dot-done{background:#16a34a}
.edz-qi-dot-active{background:var(--edz-primary,#0891b2);transform:scale(1.2)}

.edz-qi-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;align-items:center}
.edz-qi-question{font-size:16px;font-weight:800;color:#1a1a2e;text-align:center}
.edz-qi-svg-wrap{width:100%;max-width:400px}
.edz-qi-svg-wrap svg{width:100%;height:auto;display:block;border-radius:10px}

.edz-qi-options{display:flex;flex-direction:column;gap:10px;width:100%;max-width:480px}
.edz-qi-option{padding:12px 16px;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;font-family:'Nunito',sans-serif;font-size:14px;font-weight:700;color:#374151;cursor:pointer;text-align:left;transition:background .12s,border-color .12s}
.edz-qi-option:hover:not(:disabled){background:#f1f5f9;border-color:#67e8f9}
.edz-qi-option:disabled{cursor:default}
.edz-qi-options-locked .edz-qi-option:not(.edz-qi-option-correct):not(.edz-qi-option-wrong){opacity:.55}
.edz-qi-option-correct{background:#dcfce7 !important;border-color:#16a34a !important;color:#166534 !important}
.edz-qi-option-wrong{background:#fee2e2 !important;border-color:#dc2626 !important;color:#7f1d1d !important}

.edz-qi-feedback{font-size:13px;font-weight:700;border-radius:8px;padding:10px 14px;width:100%;max-width:480px;text-align:center}
.edz-qi-feedback.edz-qi-ok{background:#d1fae5;color:#065f46}
.edz-qi-feedback.edz-qi-err{background:#fee2e2;color:#7f1d1d}

.edz-qi-actions{display:flex;justify-content:center;margin-top:14px}
.edz-qi-actions .edz-be-run-btn,.edz-qi-actions .edz-be-reset-btn{max-width:280px}

.edz-qi-result{margin-top:1rem;border-radius:12px;padding:1.75rem;text-align:center;display:flex;flex-direction:column;align-items:center;gap:6px}
.edz-qi-result-ok{background:#f0fdf4;border:1px solid #86efac}
.edz-qi-result-fail{background:#fefce8;border:1px solid #fde68a}
.edz-qi-result-emoji{font-size:36px;line-height:1}
.edz-qi-result-title{font-size:17px;font-weight:800;color:#1a1a2e}
.edz-qi-result-sub{font-size:13px;color:#64748b;max-width:420px;line-height:1.5}

/* -- Baner wersji demo ([panel_demo], bez logowania) ------------- */
.edz-demo-banner{width:100%;max-width:100%;box-sizing:border-box;margin:0 0 1.25rem;display:flex;align-items:center;gap:14px;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;padding:14px 18px;font-family:'Nunito',sans-serif}
.edz-demo-banner-icon{font-size:26px;line-height:1;flex-shrink:0}
.edz-demo-banner-text{flex:1;font-size:13px;color:#166534;line-height:1.5}
.edz-demo-banner-text strong{display:inline-block;margin-bottom:2px;font-size:14px;color:#14532d}
.edz-demo-banner-btn{flex-shrink:0;padding:10px 18px;background:#16a34a;color:#fff;border-radius:8px;font-size:13px;font-weight:800;text-decoration:none;white-space:nowrap;transition:background .15s}
.edz-demo-banner-btn:hover{background:#15803d;color:#fff}
@media(max-width:560px){.edz-demo-banner{flex-wrap:wrap}.edz-demo-banner-btn{width:100%;text-align:center}}

/* ===== Edukacja Zdrowotna 01: ilustracje i animacje dydaktyczne ===== */
.edz-health-visual{margin:18px 0 22px;padding:18px;background:linear-gradient(135deg,#f0fdfa,#eff6ff);border:1px solid #bae6fd;border-radius:16px;overflow:hidden}
.edz-hv-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:16px}.edz-hv-head b{font-size:16px;color:#0f172a}.edz-hv-head span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;color:#0369a1;background:#e0f2fe;padding:5px 9px;border-radius:999px}.edz-health-visual p{margin:14px 0 0;text-align:center;font-size:13px;color:#475569}
.edz-hv-community{height:230px;max-width:520px;margin:auto;position:relative}.edz-hv-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:118px;height:118px;border-radius:50%;background:#fff;box-shadow:0 8px 25px #0ea5e933;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:40px;z-index:2}.edz-hv-center small,.edz-hv-orbit small{display:block;font-size:10px;font-weight:800;color:#475569}.edz-hv-orbit{position:absolute;width:82px;height:82px;border-radius:50%;background:#fff;border:2px solid #a5f3fc;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:27px;animation:edzFloat 3s ease-in-out infinite}.edz-hv-orbit.o1{left:4%;top:8%}.edz-hv-orbit.o2{right:4%;top:8%;animation-delay:.5s}.edz-hv-orbit.o3{left:8%;bottom:2%;animation-delay:1s}.edz-hv-orbit.o4{right:8%;bottom:2%;animation-delay:1.5s}@keyframes edzFloat{50%{transform:translateY(-8px)}}
.edz-hv-flow,.edz-hv-pillars{display:flex;align-items:stretch;justify-content:center;gap:9px;flex-wrap:wrap}.edz-hv-flow>div,.edz-hv-pillars>div{flex:1;min-width:120px;background:#fff;border:1px solid #dbeafe;border-radius:12px;padding:14px;text-align:center;font-size:25px}.edz-hv-flow b,.edz-hv-flow small,.edz-hv-pillars b,.edz-hv-pillars small{display:block;font-size:12px;margin-top:5px}.edz-hv-flow small,.edz-hv-pillars small{font-weight:600;color:#64748b}.edz-hv-flow i{align-self:center;font-size:22px;color:#0284c7;font-style:normal;animation:edzArrow 1.2s infinite}@keyframes edzArrow{50%{transform:translateX(5px)}}
.edz-hv-shields{display:flex;justify-content:center;align-items:center;gap:24px;flex-wrap:wrap}.shield{width:190px;min-height:145px;background:#fff;border:2px solid #86efac;border-radius:40% 40% 48% 48%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-size:34px;padding:12px}.shield b,.shield small{display:block;font-size:12px;margin-top:5px}.shield small{color:#64748b}.shield.pulse{animation:edzPulse 2s infinite}.shield.scan{position:relative;overflow:hidden}.shield.scan:after{content:"";position:absolute;left:10%;right:10%;height:3px;background:#38bdf8;box-shadow:0 0 8px #38bdf8;animation:edzScan 2.3s infinite}@keyframes edzPulse{50%{transform:scale(1.035)}}@keyframes edzScan{0%{top:18%}50%{top:78%}100%{top:18%}}.edz-hv-shields .arrow{font-size:28px;color:#0284c7}
.edz-hv-brain,.edz-hv-tooth{text-align:center}.brain,.tooth{font-size:82px;display:inline-block;position:relative;animation:edzPulse 2s infinite}.spark,.acid{position:absolute;font-size:11px;font-weight:900}.spark{color:#f59e0b;animation:edzSpark 1.5s infinite}.s1{left:15%;top:20%}.s2{right:12%;top:38%;animation-delay:.5s}.s3{left:45%;bottom:15%;animation-delay:1s}@keyframes edzSpark{0%,100%{opacity:.2;transform:scale(.6)}50%{opacity:1;transform:scale(1.5)}}.edz-hv-chain{display:flex;justify-content:center;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px}.edz-hv-chain span{background:#fff;border:1px solid #bfdbfe;padding:7px 10px;border-radius:999px;font-size:12px;font-weight:800}.edz-hv-chain i{font-style:normal;color:#0284c7}.acid{color:#ef4444;animation:edzAcid 2s infinite}.a1{left:-20px;top:15px}.a2{right:-24px;top:30px;animation-delay:.6s}.a3{left:-10px;bottom:5px;animation-delay:1.2s}@keyframes edzAcid{50%{transform:translateY(10px);opacity:.4}}
.edz-hv-ad{display:flex;gap:22px;justify-content:center;align-items:center;flex-wrap:wrap}.phone{width:180px;border:7px solid #1e293b;border-radius:22px;background:#fff;padding:18px 12px;text-align:center;box-shadow:0 10px 25px #0f172a22}.phone strong,.phone span{display:block;margin:9px 0}.phone button{border:0;border-radius:8px;padding:8px 12px;background:#0ea5e9;color:#fff;font-weight:800}.adnotes{display:flex;flex-direction:column;gap:8px}.adnotes span{background:#fff;border-radius:9px;padding:9px 12px;font-size:12px;font-weight:700;border:1px solid #e2e8f0}.rule222{margin:15px auto 0;max-width:480px;background:#fff;border:2px dashed #22c55e;border-radius:12px;padding:12px;text-align:center}.rule222 b{font-size:24px;color:#15803d;margin-right:10px}.rule222 span{font-size:12px;font-weight:700;color:#475569}
@media(max-width:620px){.edz-hv-head{align-items:flex-start;flex-direction:column}.edz-hv-flow i{display:none}.edz-hv-community{height:300px}.edz-hv-orbit.o1{left:0}.edz-hv-orbit.o2{right:0}.edz-hv-orbit.o3{left:0}.edz-hv-orbit.o4{right:0}.edz-hv-shields .arrow{transform:rotate(90deg);width:100%;text-align:center}}
@media(prefers-reduced-motion:reduce){.edz-health-visual *{animation:none!important}}

/* ===== Edukacja Zdrowotna 02: system zdrowia i prawa pacjenta ===== */
.edz-hv-system{height:245px;max-width:560px;margin:auto;position:relative}.sys-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:190px;height:120px;border-radius:50%;background:#fff;box-shadow:0 8px 28px #0284c733;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:36px;z-index:2}.sys-core b,.sys-core small,.sys-node b{display:block;font-size:11px}.sys-core small{max-width:155px;text-align:center;color:#64748b}.sys-node{position:absolute;width:105px;height:72px;background:#fff;border:2px solid #bae6fd;border-radius:14px;display:flex;gap:4px;flex-direction:column;align-items:center;justify-content:center;font-size:25px;animation:edzFloat 3s ease-in-out infinite}.sys-node.n1{left:0;top:10px}.sys-node.n2{right:0;top:10px;animation-delay:.5s}.sys-node.n3{left:0;bottom:5px;animation-delay:1s}.sys-node.n4{right:0;bottom:5px;animation-delay:1.5s}
.edz-hv-carepath,.edz-hv-money,.edz-hv-consent{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap}.edz-hv-carepath>div,.edz-hv-money>div,.edz-hv-consent>div{min-width:145px;flex:1;background:#fff;border:1px solid #bfdbfe;border-radius:14px;padding:15px;text-align:center;font-size:30px}.edz-hv-carepath b,.edz-hv-carepath small,.edz-hv-money b,.edz-hv-money small,.edz-hv-consent b,.edz-hv-consent small{display:block;font-size:12px;margin-top:4px}.edz-hv-carepath small,.edz-hv-money small,.edz-hv-consent small{color:#64748b}.edz-hv-carepath i,.edz-hv-money i,.edz-hv-consent i{font-style:normal;font-size:24px;color:#0284c7;animation:edzArrow 1.2s infinite}.edz-hv-emergency,.edz-hv-help{margin:14px auto 0;max-width:650px;background:#fff7ed;border:1px solid #fdba74;border-radius:12px;padding:11px;text-align:center;font-size:12px}.edz-hv-money .nfz{animation:edzPulse 2s infinite}.edz-hv-balance{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:14px}.edz-hv-balance span,.edz-hv-balance b{padding:7px 10px;border-radius:999px;background:#fff;border:1px solid #dbeafe;font-size:11px}.edz-hv-three{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.edz-hv-three>div{background:#fff;border:1px solid #dbeafe;border-radius:16px;padding:18px;text-align:center;font-size:38px;transition:transform .2s}.edz-hv-three>div:hover{transform:translateY(-4px)}.edz-hv-three b,.edz-hv-three small{display:block;font-size:12px;margin-top:6px}.edz-hv-three small{color:#64748b}
.edz-hv-cycle{width:330px;height:330px;position:relative;margin:0 auto}.edz-hv-cycle .cy{position:absolute;width:112px;min-height:62px;background:#fff;border:2px solid #bae6fd;border-radius:14px;padding:8px;text-align:center;font-size:22px;animation:edzCycleGlow 3s infinite}.edz-hv-cycle .cy b{display:block;font-size:10px}.edz-hv-cycle .c1{left:109px;top:0}.edz-hv-cycle .c2{right:0;top:92px;animation-delay:.6s}.edz-hv-cycle .c3{right:35px;bottom:15px;animation-delay:1.2s}.edz-hv-cycle .c4{left:35px;bottom:15px;animation-delay:1.8s}.edz-hv-cycle .c5{left:0;top:92px;animation-delay:2.4s}.cycle-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:100px;height:100px;border-radius:50%;background:#0ea5e9;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:30px;box-shadow:0 0 0 10px #e0f2fe}.cycle-center small{font-size:10px;text-align:center;font-weight:800}@keyframes edzCycleGlow{50%{border-color:#22c55e;box-shadow:0 4px 18px #22c55e33}}
.edz-hv-privacy{height:245px;position:relative;max-width:560px;margin:auto;display:flex;align-items:center;justify-content:center}.privacy-person{position:relative;z-index:3;width:190px;height:125px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:42px;box-shadow:0 8px 25px #0ea5e933}.privacy-person b,.privacy-person small{display:block;font-size:11px;text-align:center}.privacy-person small{color:#64748b}.privacy-ring{position:absolute;border:2px dashed #38bdf8;border-radius:50%;animation:edzPrivacy 3s infinite}.privacy-ring.r1{width:260px;height:180px}.privacy-ring.r2{width:350px;height:230px;animation-delay:1s}.privacy-note{position:absolute;right:0;bottom:0;max-width:190px;background:#fff;border:1px solid #bae6fd;border-radius:10px;padding:8px;font-size:10px;z-index:4}@keyframes edzPrivacy{50%{transform:scale(1.05);opacity:.45}}
@media(max-width:620px){.edz-hv-three{grid-template-columns:1fr}.edz-hv-carepath i,.edz-hv-money i,.edz-hv-consent i{display:none}.edz-hv-system{height:330px}.sys-node.n1,.sys-node.n3{left:0}.sys-node.n2,.sys-node.n4{right:0}.edz-hv-cycle{transform:scale(.86);margin:-20px auto}.privacy-note{right:5px;bottom:0}}


/* ===== Edukacja Zdrowotna 03: organizm, zakażenia i pierwsza pomoc ===== */
.edz-hv-homeo,.edz-hv-immunity{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;position:relative}.edz-hv-homeo>div:not(.homeo-return),.edz-hv-immunity>div{flex:1;min-width:145px;background:#fff;border:1px solid #bfdbfe;border-radius:15px;padding:16px;text-align:center;font-size:32px}.edz-hv-homeo b,.edz-hv-homeo small,.edz-hv-immunity b,.edz-hv-immunity small{display:block;font-size:11px;margin-top:4px}.edz-hv-homeo small,.edz-hv-immunity small{color:#64748b}.edz-hv-homeo>i,.edz-hv-immunity>i{font-style:normal;color:#0284c7;font-size:24px;animation:edzArrow 1.2s infinite}.homeo-control{animation:edzPulse 2.2s infinite}.homeo-return{width:100%;text-align:center;font-size:12px;font-weight:800;color:#15803d;background:#f0fdf4;border-radius:999px;padding:7px}
.edz-hv-hygiene{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.edz-hv-hygiene>div{position:relative;background:#fff;border:1px solid #dbeafe;border-radius:15px;padding:16px 8px;text-align:center;font-size:35px;overflow:hidden}.edz-hv-hygiene b,.edz-hv-hygiene small{display:block;font-size:11px;margin-top:5px}.edz-hv-hygiene small{color:#64748b}.wash{position:absolute;left:15%;bottom:4px;font-size:18px;animation:edzBubble 2s infinite}@keyframes edzBubble{0%{transform:translateY(10px);opacity:0}50%{opacity:1}100%{transform:translateY(-45px);opacity:0}}
.edz-hv-infection{display:grid;grid-template-columns:120px 1fr 120px;align-items:center;gap:12px}.infect-source,.infect-person{background:#fff;border:2px solid #bae6fd;border-radius:50%;width:110px;height:110px;display:flex;flex-direction:column;justify-content:center;align-items:center;font-size:35px;animation:edzPulse 2.3s infinite}.infect-source b,.infect-person b{font-size:11px}.infect-path{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}.infect-path span{background:#fff;border:1px solid #dbeafe;border-radius:999px;padding:7px 9px;font-size:10px;font-weight:800;animation:edzPath 3s infinite}.infect-path span:nth-child(2){animation-delay:.4s}.infect-path span:nth-child(3){animation-delay:.8s}.infect-path span:nth-child(4){animation-delay:1.2s}.infect-path span:nth-child(5){animation-delay:1.6s}@keyframes edzPath{50%{transform:translateX(5px);border-color:#fca5a5}}.infect-stop{grid-column:1/-1;text-align:center;background:#f0fdf4;border:1px solid #86efac;border-radius:12px;padding:9px;font-size:11px;font-weight:800}
.imm-memory{position:relative;animation:edzPulse 2.2s infinite}.ab{position:absolute;color:#0ea5e9;font-size:20px;font-weight:900;animation:edzSpark 1.7s infinite}.imm-memory .a1{left:12px;top:8px}.imm-memory .a2{right:15px;top:15px;animation-delay:.5s}.imm-memory .a3{right:30px;bottom:6px;animation-delay:1s}
.edz-hv-eight{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.edz-hv-eight span{background:#fff;border:1px solid #dbeafe;border-radius:12px;padding:12px 7px;text-align:center;font-size:11px;font-weight:800;transition:transform .2s}.edz-hv-eight span:hover{transform:translateY(-3px)}.edz-hv-progress{margin:14px auto 0;max-width:560px;text-align:center}.edz-hv-progress b,.edz-hv-progress small{display:block;font-size:11px}.edz-hv-progress>span{display:block;height:10px;background:#e2e8f0;border-radius:999px;margin:8px 0;overflow:hidden}.edz-hv-progress>span i{display:block;width:72%;height:100%;background:#22c55e;border-radius:999px;animation:edzGrow 3s ease-in-out infinite}@keyframes edzGrow{0%,100%{width:35%}50%{width:82%}}
.edz-hv-triage{max-width:600px;margin:auto}.triage-q{background:#fff;border:2px solid #fbbf24;border-radius:14px;padding:14px;text-align:center}.triage-branches{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px;position:relative}.triage-branches:before{content:"";position:absolute;left:50%;top:-18px;height:18px;border-left:2px dashed #94a3b8}.triage-branches>div{background:#fff;border-radius:14px;padding:15px;text-align:center;font-size:27px}.triage-branches .urgent{border:2px solid #fca5a5;animation:edzUrgent 1.8s infinite}.triage-branches .routine{border:2px solid #86efac}.triage-branches b,.triage-branches small{display:block;font-size:11px}@keyframes edzUrgent{50%{box-shadow:0 0 0 6px #fee2e2}}.edz-hv-alert{margin:12px auto 0;max-width:620px;background:#fff7ed;border:1px solid #fdba74;border-radius:10px;padding:9px;text-align:center;font-size:11px}
.edz-hv-firstaid{display:flex;gap:7px;justify-content:center;flex-wrap:wrap}.edz-hv-firstaid .fa{min-width:110px;flex:1;background:#fff;border:2px solid #dbeafe;border-radius:13px;padding:12px 7px;text-align:center;font-size:26px;animation:edzAid 5s infinite}.edz-hv-firstaid .fa:nth-child(2){animation-delay:1s}.edz-hv-firstaid .fa:nth-child(3){animation-delay:2s}.edz-hv-firstaid .fa:nth-child(4){animation-delay:3s}.edz-hv-firstaid .fa:nth-child(5){animation-delay:4s}.edz-hv-firstaid b,.edz-hv-firstaid small{display:block;font-size:10px;margin-top:4px}@keyframes edzAid{0%,18%,100%{border-color:#dbeafe;transform:translateY(0)}8%{border-color:#22c55e;transform:translateY(-5px);box-shadow:0 5px 14px #22c55e33}}.edz-hv-cpr{margin:14px auto 0;max-width:580px;background:#fff;border-radius:14px;padding:10px;text-align:center}.edz-hv-cpr .heart{font-size:28px;display:inline-block;animation:edzHeart .55s infinite alternate}.edz-hv-cpr b{font-size:22px;margin:0 10px}.edz-hv-cpr small{display:block;font-size:10px;color:#64748b}@keyframes edzHeart{to{transform:scale(1.2)}}
@media(max-width:620px){.edz-hv-hygiene,.edz-hv-eight{grid-template-columns:repeat(2,1fr)}.edz-hv-infection{grid-template-columns:1fr}.infect-source,.infect-person{margin:auto}.infect-stop{grid-column:auto}.edz-hv-homeo>i,.edz-hv-immunity>i{display:none}.triage-branches{grid-template-columns:1fr}}


/* ===== Edukacja Zdrowotna 04: odżywianie ===== */
.edz-hv-nutri-state{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.edz-hv-nutri-state>div,.edz-hv-macros .macro{background:#fff;border:1px solid #dbeafe;border-radius:14px;padding:14px;text-align:center;font-size:30px}.edz-hv-nutri-state b,.edz-hv-nutri-state small,.edz-hv-macros b,.edz-hv-macros small{display:block;font-size:11px;margin-top:4px}.edz-hv-nutri-state small,.edz-hv-macros small{color:#64748b}.edz-hv-nutri-state strong{grid-column:1/-1;text-align:center;font-size:12px;color:#334155}.edz-hv-macros{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.edz-hv-macros .macro{position:relative;overflow:hidden}.edz-hv-macros .macro i{display:block;height:6px;background:#e2e8f0;border-radius:99px;margin-top:12px;overflow:hidden}.edz-hv-macros .macro i:after{content:"";display:block;height:100%;width:20%;background:#22c55e;border-radius:99px;animation:edzMacro 3s ease-in-out infinite}.edz-hv-macros .m2 i:after{animation-delay:.6s}.edz-hv-macros .m3 i:after{animation-delay:1.2s}@keyframes edzMacro{50%{width:85%}}
.edz-hv-bio,.edz-hv-water,.edz-hv-process{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}.edz-hv-bio>div,.edz-hv-water>div,.edz-hv-process>div{min-width:150px;flex:1;background:#fff;border:1px solid #bfdbfe;border-radius:14px;padding:15px;text-align:center;font-size:30px;position:relative}.edz-hv-bio b,.edz-hv-bio small,.edz-hv-water b,.edz-hv-water small,.edz-hv-process b,.edz-hv-process small{display:block;font-size:11px;margin-top:4px}.edz-hv-bio small,.edz-hv-water small,.edz-hv-process small{color:#64748b}.edz-hv-bio>i,.edz-hv-process>i{font-style:normal;font-size:24px;color:#0284c7;animation:edzArrow 1.2s infinite}.bio-dot{position:absolute;font-size:9px!important;font-weight:900;color:#b91c1c;animation:edzBio 2s infinite}.bio-dot.d1{left:25%;bottom:12px}.bio-dot.d2{left:48%;bottom:18px;animation-delay:.5s}.bio-dot.d3{right:22%;bottom:10px;animation-delay:1s}@keyframes edzBio{50%{transform:translateY(-12px);opacity:.35}}.edz-hv-mini-note,.edz-hv-label{margin:13px auto 0;max-width:650px;background:#fff;border:1px dashed #94a3b8;border-radius:11px;padding:10px;text-align:center;font-size:11px}.water-body{animation:edzPulse 2s infinite}.drop{position:absolute;color:#38bdf8;font-size:12px!important;animation:edzDrop 2s infinite}.dr1{left:25%;top:10px}.dr2{right:25%;top:16px;animation-delay:.5s}.dr3{left:48%;bottom:8px;animation-delay:1s}@keyframes edzDrop{50%{transform:translateY(12px);opacity:.25}}
.edz-hv-risk{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center}.edz-hv-risk>div{background:#fff;border:1px solid #fed7aa;border-radius:14px;padding:14px;text-align:center;font-size:27px}.edz-hv-risk b,.edz-hv-risk small{display:block;font-size:11px;margin-top:4px}.edz-hv-risk small{color:#64748b}.edz-hv-risk i{font-style:normal;font-size:24px;color:#f97316;animation:edzArrow 1.2s infinite}.edz-hv-plate{display:flex;align-items:center;justify-content:center;gap:25px;flex-wrap:wrap}.plate{width:250px;height:250px;border-radius:50%;background:#fff;border:8px solid #e2e8f0;box-shadow:0 8px 25px #0f172a1a;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;overflow:hidden;animation:edzPlate 4s ease-in-out infinite}.plate span{display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:35px;border:1px solid #e2e8f0}.plate .veg{grid-row:1/-1}.plate small{font-size:9px;font-weight:800;color:#475569;text-align:center}.plate-side{display:flex;flex-direction:column;gap:8px}.plate-side span{background:#fff;border:1px solid #dbeafe;border-radius:10px;padding:9px 12px;font-size:11px;font-weight:700}@keyframes edzPlate{50%{transform:rotate(2deg) scale(1.02)}}
@media(max-width:620px){.edz-hv-nutri-state,.edz-hv-macros{grid-template-columns:1fr 1fr}.edz-hv-risk{grid-template-columns:1fr}.edz-hv-risk i{transform:rotate(90deg);text-align:center}.edz-hv-bio>i,.edz-hv-process>i{display:none}.plate{width:220px;height:220px}}


/* Edukacja Zdrowotna – podkurs 05: wizualizacje */
.edz-hv-energy{display:grid;grid-template-columns:1fr 110px 1fr;gap:12px;align-items:center}.energy-in,.energy-out{background:#fff;border:1px solid #dbeafe;border-radius:15px;padding:16px;text-align:center;font-size:32px}.energy-in b,.energy-out b,.energy-in small,.energy-out small{display:block;font-size:11px;margin-top:4px}.energy-in small,.energy-out small{color:#64748b}.energy-scale{height:70px;position:relative}.energy-scale .beam{position:absolute;left:5%;right:5%;top:25px;height:5px;background:#0ea5e9;border-radius:99px;animation:edzBalance 3s ease-in-out infinite;transform-origin:center}.energy-scale .pivot{position:absolute;left:40%;top:28px;font-size:35px}@keyframes edzBalance{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}.edz-hv-pal{display:flex;gap:7px;justify-content:center;flex-wrap:wrap;margin-top:12px}.edz-hv-pal span{background:#fff;border:1px solid #bfdbfe;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:800}
.edz-hv-plate5{display:flex;justify-content:center;align-items:center;gap:25px;flex-wrap:wrap}.plate5{width:250px;height:250px;border-radius:50%;overflow:hidden;border:8px solid #e2e8f0;background:#fff;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;box-shadow:0 8px 25px #0f172a1a;animation:edzPlate5 4s ease-in-out infinite}.plate5 span{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-size:34px;border:1px solid #e2e8f0}.plate5 .p5veg{grid-row:1/-1}.plate5 small{font-size:9px;font-weight:800;color:#475569}.p5side{display:flex;flex-direction:column;gap:8px}.p5side span{background:#fff;border:1px solid #dbeafe;border-radius:10px;padding:9px 12px;font-size:11px;font-weight:700}@keyframes edzPlate5{50%{transform:scale(1.025)}}
.edz-hv-day{display:grid;grid-template-columns:1.3fr .8fr;gap:18px;align-items:center}.day-clock{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}.day-clock span{flex:1;min-width:95px;background:#fff;border:1px solid #dbeafe;border-radius:12px;padding:12px 6px;text-align:center;font-size:25px;animation:edzMeal 5s infinite}.day-clock span:nth-child(2){animation-delay:1s}.day-clock span:nth-child(3){animation-delay:2s}.day-clock span:nth-child(4){animation-delay:3s}.day-clock span:nth-child(5){animation-delay:4s}.day-clock b{display:block;font-size:9px}@keyframes edzMeal{8%{transform:translateY(-4px);border-color:#22c55e}}.label-card{background:#fff;border:1px solid #cbd5e1;border-radius:13px;padding:12px}.label-card>b,.label-card>small,.label-card>strong{display:block;font-size:10px;margin-bottom:8px}.label-card div{display:grid;grid-template-columns:45px 1fr;align-items:center;font-size:9px;margin:7px 0}.label-card i{height:7px;background:#e2e8f0;border-radius:99px;overflow:hidden}.label-card i:after{content:"";display:block;height:100%;background:#f59e0b;animation:edzLabel 3s infinite}.label-card .sugarbar:after{width:72%}.label-card .saltbar:after{width:38%;animation-delay:.5s}@keyframes edzLabel{50%{opacity:.35}}
.edz-hv-plant{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.edz-hv-plant>div{min-width:150px;flex:1;background:#fff;border:1px solid #bbf7d0;border-radius:14px;padding:15px;text-align:center;font-size:29px}.edz-hv-plant b,.edz-hv-plant small{display:block;font-size:11px}.edz-hv-plant small{color:#64748b}.edz-hv-plant>i{font-style:normal;font-size:23px;color:#16a34a;animation:edzArrow 1.2s infinite}.plant-center{animation:edzPulse 2.2s infinite}.plant-check{display:flex;gap:7px;flex-wrap:wrap;justify-content:center;margin-top:12px}.plant-check span{background:#f0fdf4;border:1px solid #86efac;border-radius:999px;padding:7px 9px;font-size:10px;font-weight:700}
.edz-hv-diets{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.edz-hv-diets>div{background:#fff;border:1px solid #fed7aa;border-radius:14px;padding:16px;text-align:center;font-size:30px}.edz-hv-diets b,.edz-hv-diets small{display:block;font-size:11px}.edz-hv-diets small{color:#64748b}.diet-filter{display:flex;align-items:center;justify-content:center;gap:6px;flex-wrap:wrap;margin-top:13px}.diet-filter span{background:#fff7ed;border:1px solid #fdba74;border-radius:10px;padding:8px;font-size:10px;font-weight:800}.diet-filter i{font-style:normal;color:#f97316;animation:edzArrow 1.2s infinite}
.edz-hv-gut{display:flex;align-items:center;justify-content:center;gap:25px;flex-wrap:wrap}.gut{width:210px;height:180px;border:10px solid #f59e0b;border-radius:45% 45% 40% 40%;background:#fff7ed;position:relative;text-align:center;font-size:70px;padding-top:35px;box-sizing:border-box}.gut>b{display:block;font-size:11px}.micro{position:absolute;font-size:14px;color:#22c55e;animation:edzMicro 3s infinite}.micro.m1{left:25px;top:30px}.micro.m2{right:28px;top:45px;animation-delay:.5s}.micro.m3{left:65px;bottom:25px;animation-delay:1s}.micro.m4{right:55px;bottom:20px;animation-delay:1.5s}.micro.m5{left:90px;top:25px;animation-delay:2s}.micro.m6{right:20px;bottom:55px;animation-delay:2.5s}@keyframes edzMicro{50%{transform:translate(8px,-8px) scale(1.35);color:#0ea5e9}}.gut-food{display:grid;grid-template-columns:1fr 1fr;gap:8px}.gut-food span{background:#fff;border:1px solid #bbf7d0;border-radius:10px;padding:9px;font-size:10px;font-weight:800}
.edz-hv-supp{display:flex;align-items:center;justify-content:center;gap:14px}.edz-hv-supp>div:not(.supp-plus){flex:1;max-width:260px;background:#fff;border:1px solid #dbeafe;border-radius:14px;padding:18px;text-align:center;font-size:35px}.edz-hv-supp b,.edz-hv-supp small{display:block;font-size:11px}.edz-hv-supp small{color:#64748b}.supp-plus{font-size:30px;font-weight:900;color:#64748b}.supp-bottle{animation:edzPulse 2.4s infinite}.supp-questions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.supp-questions span{background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:9px;font-size:10px;font-weight:700}
@media(max-width:620px){.edz-hv-energy{grid-template-columns:1fr}.energy-scale{height:55px}.edz-hv-day{grid-template-columns:1fr}.edz-hv-diets{grid-template-columns:1fr}.edz-hv-plant>i,.diet-filter i{display:none}.supp-questions{grid-template-columns:1fr}.plate5{width:220px;height:220px}}
@media(prefers-reduced-motion:reduce){.energy-scale .beam,.plate5,.day-clock span,.plant-center,.diet-filter i,.micro,.supp-bottle{animation:none!important}}

/* Edukacja Zdrowotna – podkurs 06: ruch, sen i kręgosłup */
.edz-hv-move60{display:grid;grid-template-columns:170px 1fr;gap:18px;align-items:center}.move-clock{width:150px;height:150px;border-radius:50%;margin:auto;background:conic-gradient(#22c55e 0 100%,#e2e8f0 0);display:grid;place-items:center;position:relative;box-shadow:inset 0 0 0 18px #fff}.move-clock:after{content:'60';font-size:38px;font-weight:900;color:#166534}.move-clock small{position:absolute;top:92px;font-size:10px;font-weight:800;color:#64748b}.move-list{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.move-list span{background:#fff;border:1px solid #bbf7d0;border-radius:12px;padding:10px;font-size:12px;font-weight:700}.move-bone{grid-column:1/-1;background:#ecfccb!important}
.edz-hv-benefits{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.edz-hv-benefits div{background:#fff;border:1px solid #bae6fd;border-radius:14px;padding:14px 8px;text-align:center;font-size:25px;animation:edzBenefit 3.5s ease-in-out infinite}.edz-hv-benefits div:nth-child(2){animation-delay:.3s}.edz-hv-benefits div:nth-child(3){animation-delay:.6s}.edz-hv-benefits div:nth-child(4){animation-delay:.9s}.edz-hv-benefits div:nth-child(5){animation-delay:1.2s}.edz-hv-benefits b,.edz-hv-benefits small{display:block;font-size:11px;margin-top:4px}.edz-hv-benefits small{color:#64748b;font-weight:500}@keyframes edzBenefit{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
.edz-hv-sitmove{display:grid;grid-template-columns:1fr 60px 1fr;align-items:center;gap:10px}.sit-card,.move-card{background:#fff;border-radius:16px;padding:18px;text-align:center;border:1px solid #cbd5e1;font-size:34px}.sit-card b,.move-card b,.sit-card small,.move-card small{display:block;font-size:11px;margin-top:4px}.sit-card small,.move-card small{color:#64748b}.sit-arrow{text-align:center;font-size:30px;animation:edzNudge 1.5s ease-in-out infinite}@keyframes edzNudge{50%{transform:translateX(8px)}}.edz-hv-break{margin-top:10px;text-align:center;background:#fef9c3;border-radius:12px;padding:9px;font-size:12px;font-weight:800}
.edz-hv-activitymap{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.edz-hv-activitymap div{background:#fff;border:1px solid #bfdbfe;border-radius:14px;padding:14px 7px;text-align:center;font-size:28px}.edz-hv-activitymap b,.edz-hv-activitymap small{display:block;font-size:10px;margin-top:4px}.edz-hv-activitymap small{color:#64748b}.edz-hv-warmup{margin-top:10px;display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.edz-hv-warmup span{background:#fff7ed;border:1px solid #fed7aa;border-radius:999px;padding:7px 10px;font-size:10px;font-weight:800}
.edz-hv-spine{display:grid;grid-template-columns:160px 1fr;gap:18px;align-items:center}.spine-person{height:170px;position:relative;background:#fff;border:1px solid #bae6fd;border-radius:18px;display:grid;place-items:center;font-size:65px}.spine-line{position:absolute;width:5px;height:95px;background:#22c55e;border-radius:99px;left:78px;top:42px;animation:edzSpine 3s ease-in-out infinite}@keyframes edzSpine{0%,100%{transform:rotate(0)}50%{transform:rotate(5deg)}}.ergo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.ergo-grid span{background:#fff;border:1px solid #dbeafe;border-radius:11px;padding:10px;font-size:11px;font-weight:700}
.edz-hv-sleep{display:grid;grid-template-columns:180px 1fr;gap:18px;align-items:center}.sleep-cycle{width:160px;height:160px;border-radius:50%;position:relative;margin:auto;border:18px solid #c4b5fd;box-shadow:inset 0 0 0 18px #dbeafe;animation:edzSleepGlow 4s ease-in-out infinite}.sleep-cycle:before{content:'NREM';position:absolute;left:40px;top:25px;font-weight:900;color:#4338ca}.sleep-cycle:after{content:'REM';position:absolute;left:50px;bottom:25px;font-weight:900;color:#0369a1}@keyframes edzSleepGlow{50%{filter:brightness(1.12);transform:scale(1.03)}}.sleep-rules{display:grid;gap:7px}.sleep-rules span{background:#fff;border:1px solid #ddd6fe;border-radius:11px;padding:9px;font-size:11px;font-weight:700}
.edz-hv-breathe{display:grid;grid-template-columns:170px 1fr;gap:18px;align-items:center}.breath-ball{width:125px;height:125px;border-radius:50%;margin:auto;background:radial-gradient(circle,#bae6fd,#38bdf8);display:grid;place-items:center;font-size:34px;animation:edzBreath 8s ease-in-out infinite}.breath-ball b{font-size:11px;color:#075985}@keyframes edzBreath{0%,100%{transform:scale(.72);opacity:.72}45%{transform:scale(1.08);opacity:1}60%{transform:scale(1.08);opacity:1}}.breath-steps{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.breath-steps span{background:#fff;border:1px solid #bae6fd;border-radius:12px;padding:10px;font-size:11px;font-weight:800}.breath-safe{grid-column:1/-1;background:#f0fdf4!important;border-color:#bbf7d0!important}
@media(max-width:620px){.edz-hv-move60,.edz-hv-spine,.edz-hv-sleep,.edz-hv-breathe{grid-template-columns:1fr}.edz-hv-benefits{grid-template-columns:repeat(2,1fr)}.edz-hv-activitymap{grid-template-columns:repeat(2,1fr)}.edz-hv-sitmove{grid-template-columns:1fr}.sit-arrow{transform:rotate(90deg)}.move-list,.ergo-grid,.breath-steps{grid-template-columns:1fr}}

/* v1.0.13 — Podkurs 07: Zdrowie społeczne i komunikacja */
.edz-hv-socialtri{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;text-align:center}.edz-hv-socialtri div{background:#fff;border:1px solid #bfdbfe;border-radius:16px;padding:18px;font-size:30px;animation:edzSocial 3s ease-in-out infinite}.edz-hv-socialtri div:nth-child(2){animation-delay:.4s}.edz-hv-socialtri div:nth-child(3){animation-delay:.8s}.edz-hv-socialtri b{display:block;font-size:12px}.edz-hv-socialtri strong{grid-column:1/-1;background:#ecfeff;border-radius:10px;padding:8px}@keyframes edzSocial{50%{transform:translateY(-5px)}}
.edz-hv-circles{height:260px;position:relative;display:grid;place-items:center}.edz-hv-circles .sc{position:absolute;border:3px solid #60a5fa;border-radius:50%;display:flex;align-items:flex-start;justify-content:center;padding-top:7px;animation:edzCircle 4s ease-in-out infinite}.edz-hv-circles .c1{width:85px;height:85px}.edz-hv-circles .c2{width:130px;height:130px;animation-delay:.3s}.edz-hv-circles .c3{width:180px;height:180px;animation-delay:.6s}.edz-hv-circles .c4{width:230px;height:230px;animation-delay:.9s}.edz-hv-circles i{z-index:2;font-style:normal;font-weight:900}.edz-hv-circles b{font-size:10px}@keyframes edzCircle{50%{border-color:#22c55e;transform:scale(1.02)}}
.edz-hv-support{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.edz-hv-support div,.edz-hv-styles div{background:#fff;border:1px solid #cbd5e1;border-radius:14px;padding:15px;text-align:center;font-size:28px}.edz-hv-support b,.edz-hv-support small,.edz-hv-styles b,.edz-hv-styles small{display:block;font-size:11px}.edz-hv-support small,.edz-hv-styles small{color:#64748b}
.edz-hv-comms{display:grid;grid-template-columns:1fr 130px 1fr;gap:10px;align-items:center;position:relative;padding-bottom:42px}.edz-hv-comms div{background:#fff;border:1px solid #93c5fd;border-radius:14px;padding:18px;text-align:center;font-size:28px}.edz-hv-comms b{display:block;font-size:11px}.edz-hv-comms i{text-align:center;font-style:normal;font-size:11px;font-weight:800;animation:edzMsg 1.8s ease-in-out infinite}.edz-hv-comms .feedback{position:absolute;bottom:8px;left:33%;right:33%}.edz-hv-comms .noise{position:absolute;top:4px;left:44%;font-size:10px;background:#fef3c7;padding:5px;border-radius:8px}@keyframes edzMsg{50%{transform:translateX(6px)}}
.edz-hv-styles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.edz-hv-styles .assert{border:2px solid #22c55e;animation:edzAssert 2.5s infinite}@keyframes edzAssert{50%{box-shadow:0 0 0 7px #dcfce7}}
.edz-hv-listen{display:flex;align-items:center;justify-content:center;gap:7px;flex-wrap:wrap}.edz-hv-listen span{background:#fff;border:1px solid #bfdbfe;border-radius:12px;padding:12px 9px;font-size:11px;animation:edzListen 4s ease-in-out infinite}.edz-hv-listen span:nth-of-type(2){animation-delay:.5s}.edz-hv-listen span:nth-of-type(3){animation-delay:1s}.edz-hv-listen span:nth-of-type(4){animation-delay:1.5s}.edz-hv-listen span:nth-of-type(5){animation-delay:2s}@keyframes edzListen{50%{background:#ecfdf5;transform:translateY(-3px)}}
.edz-hv-network{height:210px;position:relative;display:grid;grid-template-columns:repeat(2,1fr);gap:12px;padding:15px 70px}.edz-hv-network span{background:#fff;border:1px solid #ddd6fe;border-radius:14px;padding:14px;text-align:center;font-weight:800;font-size:11px}.net-me{position:absolute;left:calc(50% - 34px);top:72px;width:68px;height:68px;border-radius:50%;background:#dcfce7;display:grid;place-items:center;z-index:2;animation:edzNet 2.5s infinite}.net-me b{font-size:10px}@keyframes edzNet{50%{transform:scale(1.08)}}.edz-hv-plan{text-align:center;background:#f0fdf4;border-radius:12px;padding:9px;font-size:11px}
@media(max-width:620px){.edz-hv-socialtri,.edz-hv-support,.edz-hv-styles{grid-template-columns:1fr}.edz-hv-socialtri strong{grid-column:auto}.edz-hv-comms{grid-template-columns:1fr}.edz-hv-comms .feedback,.edz-hv-comms .noise{position:static}.edz-hv-network{padding:12px;grid-template-columns:1fr 1fr}.net-me{position:static;grid-column:1/-1;margin:auto}}
@media(prefers-reduced-motion:reduce){.edz-hv-socialtri div,.edz-hv-circles .sc,.edz-hv-comms i,.edz-hv-styles .assert,.edz-hv-listen span,.net-me{animation:none!important}}


/* v1.0.14 — Podkurs 08: Zdrowie seksualne i profilaktyka chorób */
.edz-hv-sexhealth,.edz-hv-identity,.edz-hv-contraception{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;text-align:center}.edz-hv-sexhealth div,.edz-hv-identity div,.edz-hv-contraception div{background:#fff;border:1px solid #bfdbfe;border-radius:14px;padding:15px;font-size:26px;animation:edz08float 3s ease-in-out infinite}.edz-hv-sexhealth b,.edz-hv-identity b,.edz-hv-contraception b{display:block;font-size:12px}.edz-hv-sexhealth small,.edz-hv-identity small,.edz-hv-contraception small{display:block;font-size:11px;color:#64748b}.edz-hv-identity{grid-template-columns:repeat(3,1fr)}.edz-hv-breakstereo,.edz-hv-help08{margin-top:12px;padding:11px;background:#fff7ed;border-radius:10px;text-align:center}.edz-hv-cycle08{display:flex;align-items:center;position:relative;gap:4px}.edz-hv-cycle08 .phase{flex:1;padding:16px 7px;text-align:center;border-radius:12px;background:#fff;border:1px solid #ddd6fe}.edz-hv-cycle08 b{display:block;font-size:11px}.sperm08{position:absolute;bottom:-12px;left:12%;font-size:26px;animation:edz08travel 5s linear infinite}.edz-hv-fertil{margin-top:24px;display:flex;gap:8px;align-items:center;justify-content:center;flex-wrap:wrap;font-size:12px}.edz-hv-fertil span,.edz-hv-fertil b{padding:8px 10px;border-radius:10px;background:#fff}.edz-hv-consent08{display:grid;grid-template-columns:1fr 1fr;gap:12px}.edz-hv-consent08>div{padding:18px;border-radius:15px;text-align:center;font-size:28px}.edz-hv-consent08 b,.edz-hv-consent08 small{display:block}.edz-hv-consent08 small{font-size:11px}.yes08{background:#ecfdf5;border:1px solid #86efac}.stop08{background:#fff1f2;border:1px solid #fda4af}.edz-hv-contraception{grid-template-columns:repeat(3,1fr)}.edz-hv-pearl{margin-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:5px;text-align:center}.edz-hv-pearl b{grid-column:1/-1}.edz-hv-pearl span{padding:9px;border-radius:9px}.pearl-low{background:#dcfce7}.pearl-high{background:#fee2e2}.edz-hv-sti{display:flex;justify-content:center;align-items:center;gap:18px;font-size:24px}.edz-hv-sti div{background:#fff;padding:18px 28px;border-radius:50px;text-align:center;animation:edz08pulse 2.5s infinite}.edz-hv-sti b{display:block;font-size:12px}.edz-hv-stishield{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:14px}.edz-hv-stishield span{background:#ecfeff;padding:8px 10px;border-radius:999px;font-size:11px;font-weight:700}.edz-hv-protection08{position:relative;height:220px;max-width:480px;margin:auto}.prot-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:95px;height:95px;border-radius:50%;background:#fff;display:grid;place-content:center;text-align:center;font-size:30px;z-index:2;box-shadow:0 0 0 12px #dbeafe}.prot-core b{display:block;font-size:11px}.edz-hv-protection08 .pr{position:absolute;padding:9px 12px;border-radius:999px;background:#fff;border:1px solid #bae6fd;font-size:11px;animation:edz08float 3s ease-in-out infinite}.pr1{left:4%;top:18%}.pr2{right:2%;top:18%;animation-delay:.4s!important}.pr3{left:5%;bottom:15%;animation-delay:.8s!important}.pr4{right:1%;bottom:15%;animation-delay:1.2s!important}@keyframes edz08float{50%{transform:translateY(-4px)}}@keyframes edz08travel{0%{left:8%;opacity:.2}50%{opacity:1}100%{left:78%;opacity:.2}}@keyframes edz08pulse{50%{transform:scale(1.04)}}
@media(max-width:620px){.edz-hv-sexhealth,.edz-hv-identity,.edz-hv-contraception{grid-template-columns:1fr 1fr}.edz-hv-cycle08{display:grid;grid-template-columns:1fr 1fr}.sperm08{display:none}.edz-hv-consent08{grid-template-columns:1fr}.edz-hv-sti{font-size:18px;gap:8px}.edz-hv-sti div{padding:12px}.edz-hv-protection08{height:250px}.edz-hv-protection08 .pr{max-width:120px;text-align:center}}
@media(prefers-reduced-motion:reduce){.edz-hv-sexhealth div,.edz-hv-identity div,.edz-hv-contraception div,.sperm08,.edz-hv-sti div,.edz-hv-protection08 .pr{animation:none!important}}

/* v1.0.15 — Podkurs 09: Dojrzewanie: ciało, emocje i higiena */
.edz-hv-pubertytime{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-items:end}.edz-hv-pubertytime .pt{background:#fff;border:1px solid #c4b5fd;border-radius:16px;text-align:center;padding:16px;font-size:28px;animation:edz09grow 4s ease-in-out infinite}.edz-hv-pubertytime .p1{min-height:105px}.edz-hv-pubertytime .p2{min-height:125px;animation-delay:.5s}.edz-hv-pubertytime .p3{min-height:145px;animation-delay:1s}.edz-hv-pubertytime b,.edz-hv-pubertytime small{display:block;font-size:11px}.edz-hv-pubertytime small{color:#64748b}@keyframes edz09grow{50%{transform:translateY(-4px)}}
.edz-hv-body09{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.edz-hv-body09 div{background:#fff;border:1px solid #bfdbfe;border-radius:14px;padding:14px 8px;text-align:center;font-size:26px;animation:edz09pulse 3s ease-in-out infinite}.edz-hv-body09 div:nth-child(2){animation-delay:.3s}.edz-hv-body09 div:nth-child(3){animation-delay:.6s}.edz-hv-body09 div:nth-child(4){animation-delay:.9s}.edz-hv-body09 div:nth-child(5){animation-delay:1.2s}.edz-hv-body09 b,.edz-hv-body09 small{display:block;font-size:10px}.edz-hv-body09 small{color:#64748b}@keyframes edz09pulse{50%{box-shadow:0 0 0 6px #eff6ff}}
.edz-hv-cycle09{display:flex;align-items:stretch;gap:6px}.edz-hv-cycle09 div{flex:1;background:#fff;border:1px solid #ddd6fe;border-radius:13px;padding:14px 8px;text-align:center;font-size:24px;animation:edz09phase 5s ease-in-out infinite}.edz-hv-cycle09 div:nth-of-type(2){animation-delay:.6s}.edz-hv-cycle09 div:nth-of-type(3){animation-delay:1.2s}.edz-hv-cycle09 div:nth-of-type(4){animation-delay:1.8s}.edz-hv-cycle09 i{align-self:center;font-style:normal}.edz-hv-cycle09 b,.edz-hv-cycle09 small{display:block;font-size:10px}@keyframes edz09phase{50%{background:#f5f3ff;transform:translateY(-3px)}}
.edz-hv-routine09{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.edz-hv-routine09 div{background:#fff;border:1px solid #a7f3d0;border-radius:14px;padding:14px 8px;text-align:center;font-size:24px}.edz-hv-routine09 b,.edz-hv-routine09 small{display:block;font-size:10px}.edz-hv-routine09 div:nth-child(1),.edz-hv-routine09 div:nth-child(2),.edz-hv-routine09 div:nth-child(3){animation:edz09routine 4s ease-in-out infinite}.edz-hv-routine09 div:nth-child(2){animation-delay:.6s}.edz-hv-routine09 div:nth-child(3){animation-delay:1.2s}@keyframes edz09routine{50%{background:#ecfdf5}}
.edz-hv-emotion09{display:grid;grid-template-columns:1fr 1.4fr;gap:16px;align-items:center}.thermo09{display:flex;flex-direction:column-reverse;border-radius:16px;overflow:hidden;border:1px solid #cbd5e1}.thermo09 span{padding:9px;text-align:center;font-size:11px;font-weight:800}.thermo09 span:nth-child(1){background:#dcfce7}.thermo09 span:nth-child(2){background:#fef9c3}.thermo09 span:nth-child(3){background:#ffedd5}.thermo09 span:nth-child(4){background:#fee2e2;animation:edz09alert 2.4s infinite}.support09{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.support09 b{grid-column:1/-1;text-align:center}.support09 span{background:#fff;border:1px solid #bfdbfe;border-radius:11px;padding:9px;text-align:center;font-size:11px}@keyframes edz09alert{50%{filter:brightness(.92)}}
.edz-hv-bodyimage09{display:grid;grid-template-columns:1fr 1fr;gap:14px}.edz-hv-bodyimage09>div{background:#fff;border:1px solid #c4b5fd;border-radius:16px;padding:22px;text-align:center;font-size:36px}.edz-hv-bodyimage09 b,.edz-hv-bodyimage09 small{display:block;font-size:11px}.filter09{animation:edz09filter 3s ease-in-out infinite}@keyframes edz09filter{50%{filter:saturate(.45);transform:scale(.98)}}.care09{display:flex;flex-wrap:wrap;justify-content:center;gap:7px;margin-top:12px}.care09 span{background:#ecfeff;border-radius:999px;padding:8px 11px;font-size:11px;font-weight:800}
@media(max-width:620px){.edz-hv-pubertytime,.edz-hv-bodyimage09,.edz-hv-emotion09{grid-template-columns:1fr}.edz-hv-body09,.edz-hv-routine09{grid-template-columns:1fr 1fr}.edz-hv-cycle09{display:grid;grid-template-columns:1fr}.edz-hv-cycle09 i{transform:rotate(90deg);text-align:center}.support09{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.edz-hv-pubertytime .pt,.edz-hv-body09 div,.edz-hv-cycle09 div,.edz-hv-routine09 div,.thermo09 span,.filter09{animation:none!important}}

/* v1.0.16 — Podkurs 10: Zdrowie psychiczne i radzenie sobie ze stresem */
.edz-hv-mental10{display:flex;align-items:center;justify-content:center;gap:10px}.edz-hv-mental10 div{flex:1;background:#fff;border:1px solid #bfdbfe;border-radius:15px;padding:16px;text-align:center;font-size:28px;animation:edz10float 4s ease-in-out infinite}.edz-hv-mental10 div:nth-of-type(2){animation-delay:.5s}.edz-hv-mental10 div:nth-of-type(3){animation-delay:1s}.edz-hv-mental10 b,.edz-hv-mental10 small{display:block;font-size:11px}.edz-hv-signal10,.edz-hv-traps10{display:flex;gap:7px;justify-content:center;flex-wrap:wrap;margin-top:12px}.edz-hv-signal10 span,.edz-hv-traps10 span{background:#fff;padding:8px 11px;border-radius:999px;font-size:11px;font-weight:800}
.edz-hv-balance10{display:grid;grid-template-columns:1fr 1fr;gap:14px}.edz-hv-balance10>div{background:#fff;border-radius:16px;padding:20px;text-align:center;font-size:34px}.risk10{border:1px solid #fdba74}.shield10{border:1px solid #86efac;animation:edz10shield 3s ease-in-out infinite}.edz-hv-balance10 b,.edz-hv-balance10 small{display:block;font-size:11px}.edz-hv-coherence10{margin-top:12px;display:flex;justify-content:center;gap:8px;flex-wrap:wrap}.edz-hv-coherence10 b{width:100%;text-align:center}.edz-hv-coherence10 span{background:#f5f3ff;padding:9px 12px;border-radius:10px;font-size:11px;font-weight:800}
.stressline10{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;align-items:end;min-height:125px}.stressline10 span{display:grid;place-content:center;text-align:center;border-radius:14px;background:#fff;border:1px solid #cbd5e1;padding:10px}.stressline10 .st1{height:70px}.stressline10 .st2{height:115px;background:#ecfdf5;animation:edz10peak 3s ease-in-out infinite}.stressline10 .st3{height:90px;background:#fff7ed}.stressline10 b,.stressline10 small{display:block;font-size:11px}.stressphases10{display:flex;justify-content:center;align-items:center;gap:8px;margin-top:12px;flex-wrap:wrap}.stressphases10 span{background:#fff;padding:8px 10px;border-radius:9px;font-size:11px;font-weight:800}
.edz-hv-emotions10{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.edz-hv-emotions10 div{background:#fff;border:1px solid #ddd6fe;border-radius:14px;padding:13px 7px;text-align:center;font-size:26px;animation:edz10emotion 5s ease-in-out infinite}.edz-hv-emotions10 div:nth-child(2){animation-delay:.4s}.edz-hv-emotions10 div:nth-child(3){animation-delay:.8s}.edz-hv-emotions10 div:nth-child(4){animation-delay:1.2s}.edz-hv-emotions10 div:nth-child(5){animation-delay:1.6s}.edz-hv-emotions10 b,.edz-hv-emotions10 small{display:block;font-size:10px}.edz-hv-emopath10{display:flex;justify-content:center;align-items:center;gap:7px;flex-wrap:wrap;margin-top:12px}.edz-hv-emopath10 span{background:#fff;padding:8px 10px;border-radius:9px;font-size:11px;font-weight:800}
.edz-hv-calm10{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.edz-hv-calm10>div{background:#fff;border:1px solid #bae6fd;border-radius:14px;padding:15px 8px;text-align:center;font-size:26px}.edz-hv-calm10 b,.edz-hv-calm10 small{display:block;font-size:10px}.breath10{position:relative}.breath10 span{display:block;width:28px;height:28px;margin:7px auto 0;border-radius:50%;background:#bfdbfe;animation:edz10breath 6s ease-in-out infinite}.edz-hv-choice10,.edz-hv-warning10{margin-top:12px;padding:11px;border-radius:11px;background:#fff;text-align:center;font-size:11px}.edz-hv-warning10{background:#fff1f2;border:1px solid #fecdd3;font-weight:700}
.edz-hv-thought10{display:flex;align-items:center;gap:8px}.edz-hv-thought10>div{flex:1;background:#fff;border-radius:14px;padding:16px;text-align:center;border:1px solid #cbd5e1}.edz-hv-thought10 b,.edz-hv-thought10 small{display:block;font-size:11px}.trap10{animation:edz10wobble 4s ease-in-out infinite}.real10{border-color:#86efac!important;background:#f0fdf4!important}
.edz-hv-help10{display:grid;grid-template-columns:130px 1fr;gap:14px;align-items:center}.me10{width:120px;height:120px;border-radius:50%;background:#fff;box-shadow:0 0 0 10px #dbeafe;display:grid;place-content:center;text-align:center;font-size:32px;animation:edz10help 3s ease-in-out infinite}.me10 b,.me10 small{display:block;font-size:10px}.helpnodes10{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.helpnodes10 span{background:#fff;border:1px solid #bfdbfe;border-radius:11px;padding:10px;font-size:11px;font-weight:800;text-align:center}
@keyframes edz10float{50%{transform:translateY(-4px)}}@keyframes edz10shield{50%{box-shadow:0 0 0 7px #dcfce7}}@keyframes edz10peak{50%{transform:translateY(-4px)}}@keyframes edz10emotion{50%{background:#faf5ff;transform:translateY(-3px)}}@keyframes edz10breath{0%,100%{transform:scale(.65);opacity:.65}42%{transform:scale(1.25);opacity:1}58%{transform:scale(1.25);opacity:1}}@keyframes edz10wobble{50%{transform:rotate(-1.5deg)}}@keyframes edz10help{50%{box-shadow:0 0 0 16px #e0f2fe}}
@media(max-width:620px){.edz-hv-mental10,.edz-hv-thought10{display:grid;grid-template-columns:1fr}.edz-hv-mental10>i,.edz-hv-thought10>i{transform:rotate(90deg);text-align:center}.edz-hv-balance10,.edz-hv-help10{grid-template-columns:1fr}.edz-hv-emotions10{grid-template-columns:1fr 1fr}.edz-hv-calm10{grid-template-columns:1fr 1fr}.me10{margin:auto}.helpnodes10{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.edz-hv-mental10 div,.shield10,.stressline10 .st2,.edz-hv-emotions10 div,.breath10 span,.trap10,.me10{animation:none!important}}


/* Podkurs 11 — Internet, uzaleznienia behawioralne i cyberzagrozenia */
.edz-hv-loop11,.edz-hv-no11,.edz-hv-check11,.edz-hv-cyber11{display:flex;align-items:center;gap:8px;justify-content:center}.edz-hv-loop11 div,.edz-hv-no11 div,.edz-hv-check11 div,.edz-hv-cyber11 div{flex:1;background:#fff;border:1px solid #bfdbfe;border-radius:14px;padding:13px;text-align:center}.edz-hv-loop11 b,.edz-hv-loop11 small,.edz-hv-no11 b,.edz-hv-no11 small,.edz-hv-check11 b,.edz-hv-check11 small,.edz-hv-cyber11 b,.edz-hv-cyber11 small{display:block}.edz-hv-loop11 div:nth-of-type(3){animation:edz11pulse 2.5s ease-in-out infinite}.edz-hv-break11{margin-top:12px;padding:10px;border-radius:12px;background:#ecfdf5;text-align:center}.edz-hv-control11{display:grid;grid-template-columns:1fr 1fr;gap:12px}.edz-hv-control11>div{padding:18px;border-radius:16px;text-align:center}.edz-hv-control11 b,.edz-hv-control11 small{display:block}.ok11{background:#ecfdf5;border:1px solid #86efac}.warn11{background:#fff7ed;border:1px solid #fdba74}.edz-hv-contract11,.edz-hv-substances11,.edz-hv-rules11,.edz-hv-safety11{display:flex;flex-wrap:wrap;gap:7px;justify-content:center;margin-top:12px}.edz-hv-contract11 span,.edz-hv-substances11 span,.edz-hv-rules11 span,.edz-hv-safety11 span{background:#fff;padding:8px 10px;border-radius:999px;font-weight:700;font-size:11px}.edz-hv-digital11{display:flex;gap:18px;justify-content:center;align-items:center}.phone11,.jomo11{position:relative;min-width:150px;padding:22px;border-radius:20px;text-align:center;background:#fff;border:1px solid #bfdbfe;font-size:28px}.phone11 b,.phone11 small,.jomo11 b,.jomo11 small{display:block;font-size:12px}.ping11{position:absolute;right:14px;top:10px;color:#ef4444;animation:edz11ping 1.4s ease-out infinite}.edz-hv-4c11{position:relative;min-height:270px;max-width:570px;margin:auto}.core11{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:90px;height:90px;border-radius:50%;background:#dbeafe;display:flex;flex-direction:column;align-items:center;justify-content:center;font-size:26px}.c11{position:absolute;width:145px;padding:11px;border-radius:14px;background:#fff;border:1px solid #bfdbfe;text-align:center}.c11 b,.c11 small{display:block}.c11.c1{left:0;top:10px}.c11.c2{right:0;top:10px}.c11.c3{left:0;bottom:10px}.c11.c4{right:0;bottom:10px}.core11{animation:edz11shield 3s ease-in-out infinite}@keyframes edz11pulse{50%{transform:scale(1.04)}}@keyframes edz11ping{0%{transform:scale(.6);opacity:1}100%{transform:scale(1.8);opacity:0}}@keyframes edz11shield{50%{box-shadow:0 0 0 12px rgba(59,130,246,.08)}}
@media(max-width:620px){.edz-hv-loop11,.edz-hv-no11,.edz-hv-check11,.edz-hv-cyber11{display:grid;grid-template-columns:1fr}.edz-hv-loop11>i,.edz-hv-no11>i,.edz-hv-check11>i,.edz-hv-cyber11>i{transform:rotate(90deg);text-align:center}.edz-hv-control11{grid-template-columns:1fr}.edz-hv-digital11{flex-direction:column}.edz-hv-4c11{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-height:0}.core11,.c11{position:static;width:auto;height:auto;transform:none}.core11{grid-column:1/-1;padding:12px;border-radius:14px}}
@media(prefers-reduced-motion:reduce){.edz-hv-loop11 div:nth-of-type(3),.ping11,.core11{animation:none!important}}


/* Podkurs 12 – zdrowie środowiskowe */
.edz-hv-env12{position:relative;min-height:285px;max-width:620px;margin:auto}.envcore12{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:100px;height:100px;border-radius:50%;background:#dcfce7;display:grid;place-content:center;text-align:center;font-size:30px;animation:edz12core 3s ease-in-out infinite}.envcore12 b,.edz-hv-env12 span b,.edz-hv-env12 span small{display:block}.edz-hv-env12 span{position:absolute;width:145px;padding:10px;border:1px solid #bbf7d0;border-radius:14px;background:#fff;text-align:center}.edz-hv-env12 span:nth-of-type(1){left:0;top:5px}.edz-hv-env12 span:nth-of-type(2){right:0;top:5px}.edz-hv-env12 span:nth-of-type(3){left:0;bottom:5px}.edz-hv-env12 span:nth-of-type(4){right:0;bottom:5px}.edz-hv-env12 span:nth-of-type(5){left:50%;top:0;transform:translateX(-50%)}.edz-hv-plan12{margin-top:12px;padding:11px;border-radius:12px;background:#f0fdf4;text-align:center}
.edz-hv-air12{display:grid;grid-template-columns:1fr 1fr;gap:14px;align-items:center}.air12,.lungs12{min-height:150px;border-radius:18px;background:#fff;border:1px solid #cbd5e1;position:relative;overflow:hidden;display:grid;place-content:center;text-align:center;padding:16px}.lungs12{font-size:36px}.lungs12 b,.lungs12 small{display:block;font-size:12px}.pm12{position:absolute;border-radius:50%;background:#94a3b8;color:#fff;font-size:9px;display:grid;place-content:center;animation:edz12dust 4s linear infinite}.pma{width:38px;height:38px;left:15%;top:20%}.pmb{width:22px;height:22px;left:55%;top:8%;animation-delay:1s}.pmc{width:18px;height:18px;left:75%;top:30%;animation-delay:2s}.edz-hv-actions12,.edz-hv-heatplan12{display:flex;gap:7px;justify-content:center;flex-wrap:wrap;margin-top:12px}.edz-hv-actions12 span,.edz-hv-heatplan12 span{background:#fff;padding:8px 10px;border-radius:999px;font-size:11px;font-weight:700}
.edz-hv-water12,.edz-hv-eco12{display:flex;align-items:center;justify-content:center;gap:7px}.edz-hv-water12 div,.edz-hv-eco12 div{flex:1;background:#fff;border:1px solid #bae6fd;border-radius:14px;padding:14px 7px;text-align:center}.edz-hv-water12 b,.edz-hv-eco12 b,.edz-hv-eco12 small{display:block}.edz-hv-waternote12,.edz-hv-nowaste12{margin-top:12px;padding:11px;border-radius:12px;background:#eff6ff;text-align:center}.act12{animation:edz12act 3s ease-in-out infinite}
.edz-hv-food12{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.edz-hv-food12 div{background:#fff;border:1px solid #fed7aa;border-radius:14px;padding:13px 7px;text-align:center;font-size:24px}.edz-hv-food12 b,.edz-hv-food12 small{display:block;font-size:10px}.edz-hv-cross12{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:12px}.edz-hv-cross12 span,.edz-hv-cross12 b{background:#fff;padding:8px 11px;border-radius:10px}.edz-hv-cross12 i{font-size:24px}
.edz-hv-waste12,.edz-hv-climate12{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.edz-hv-waste12 div,.edz-hv-climate12 div{background:#fff;border:1px solid #bbf7d0;border-radius:15px;padding:15px 8px;text-align:center;font-size:27px}.edz-hv-waste12 b,.edz-hv-waste12 small,.edz-hv-climate12 b,.edz-hv-climate12 small{display:block;font-size:10px}.heat12{animation:edz12heat 3s ease-in-out infinite}
@keyframes edz12core{50%{box-shadow:0 0 0 12px rgba(34,197,94,.10)}}@keyframes edz12dust{0%{transform:translateY(-20px);opacity:.2}50%{opacity:1}100%{transform:translateY(150px);opacity:.1}}@keyframes edz12heat{50%{background:#fff7ed;transform:translateY(-3px)}}@keyframes edz12act{50%{box-shadow:0 0 0 8px rgba(34,197,94,.08)}}
@media(max-width:620px){.edz-hv-env12{display:grid;grid-template-columns:1fr 1fr;gap:8px;min-height:0}.envcore12,.edz-hv-env12 span{position:static;width:auto;height:auto;transform:none}.envcore12{grid-column:1/-1;padding:12px;border-radius:14px}.edz-hv-air12{grid-template-columns:1fr}.edz-hv-water12,.edz-hv-eco12{display:grid;grid-template-columns:1fr}.edz-hv-water12>i,.edz-hv-eco12>i{transform:rotate(90deg);text-align:center}.edz-hv-food12{grid-template-columns:1fr 1fr}.edz-hv-waste12,.edz-hv-climate12{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.envcore12,.pm12,.heat12,.act12{animation:none!important}}
