/* Eurokadra Asystent 1.0.0, style ograniczone do klasy .eka */
.eka{--eka-red:#DD2026;--eka-red2:#A11318;--eka-coal:#141419;--eka-coal2:#1E1E24;--eka-bone:#FAFAF8;--eka-hair:#E9E9E6;--eka-line:#D6D6D2;--eka-smoke:#6E6E76;--eka-txt:#3A3A41;--eka-ok:#1E8A55;
--eka-fd:"Sora",system-ui,-apple-system,"Segoe UI",sans-serif;--eka-fb:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
font-family:var(--eka-fb);font-size:16px;line-height:1.55;color:var(--eka-coal);-webkit-font-smoothing:antialiased;text-align:left}
.eka *,.eka *::before,.eka *::after{box-sizing:border-box;border-radius:0!important}
.eka p{margin:0}
.eka a{color:inherit}
.eka button,.eka input,.eka select{font-family:inherit;letter-spacing:normal;text-transform:none}
.eka button{margin:0}
.eka :focus-visible{outline:2px solid var(--eka-red);outline-offset:2px}

/* karta */
.eka-card{background:#fff;border:1px solid var(--eka-hair);display:flex;flex-direction:column;min-height:0;position:relative}
.eka-hd{display:flex;align-items:center;gap:14px;padding:16px 20px;border-bottom:1px solid var(--eka-hair);flex:none}
.eka-av{position:relative;width:42px;height:42px;flex:none;background:var(--eka-red);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--eka-fd);font-weight:800;font-size:15px;letter-spacing:-.02em}
.eka-av::after{content:"";position:absolute;right:-4px;bottom:-4px;width:12px;height:12px;background:var(--eka-ok);border:2px solid #fff}
.eka-nm{display:flex;flex-direction:column;line-height:1.3;min-width:0}
.eka-nm b{font-family:var(--eka-fd);font-size:16px;font-weight:700;letter-spacing:-.01em}
.eka-nm span{font-size:13.5px;color:var(--eka-smoke)}
.eka-x{margin-left:auto!important;width:44px;height:44px;border:0!important;background:transparent!important;cursor:pointer;color:var(--eka-coal)!important;display:flex;align-items:center;justify-content:center;padding:0!important;flex:none}
.eka-x:hover{background:var(--eka-bone)!important}
.eka-log{flex:1 1 auto;overflow-y:auto;overscroll-behavior:contain;padding:20px;display:flex;flex-direction:column;gap:12px;min-height:0}
.eka-m{max-width:88%;padding:12px 16px;line-height:1.5;font-size:15.5px;overflow-wrap:break-word;animation:ekaIn .3s ease both}
.eka-b{align-self:flex-start;background:var(--eka-bone);border-left:2px solid var(--eka-red);color:var(--eka-coal)}
.eka-b a{color:var(--eka-red);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.eka-u{align-self:flex-end;background:var(--eka-coal);color:#fff}
.eka-typ{align-self:flex-start;background:var(--eka-bone);padding:15px 16px;display:flex;gap:5px}
.eka-typ i{width:6px;height:6px;background:var(--eka-smoke);opacity:.35;animation:ekaDot 1s infinite}
.eka-typ i:nth-child(2){animation-delay:.15s}.eka-typ i:nth-child(3){animation-delay:.3s}

/* kafle odpowiedzi */
.eka-opts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;animation:ekaIn .3s ease both}
.eka-opt{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:3px;text-align:left;padding:12px 14px!important;min-height:56px;background:#fff!important;border:1px solid var(--eka-line)!important;cursor:pointer;color:var(--eka-coal)!important;font-size:15px;line-height:1.3;transition:border-color .15s,background .15s;box-shadow:none!important}
.eka-opt b{font-weight:600;font-size:15px}
.eka-opt span{font-size:12.5px;color:var(--eka-smoke);line-height:1.35}
.eka-opt:hover{border-color:var(--eka-coal)!important}
.eka-opt.sel{background:var(--eka-coal)!important;border-color:var(--eka-coal)!important;color:#fff!important}
.eka-opt.sel span{color:rgba(255,255,255,.75)}
.eka-opts.done .eka-opt:not(.sel){opacity:.4;pointer-events:none}
.eka-opts.done .eka-opt.sel{pointer-events:none}
.eka-opts>.eka-opt:last-child:nth-child(odd){grid-column:1/-1}

/* lista województw */
.eka-pick{display:flex;gap:8px;animation:ekaIn .3s ease both}
.eka-pick select{flex:1;min-width:0;height:48px;border:1px solid var(--eka-line);background:#fff;padding:0 36px 0 12px;font-size:15px;color:var(--eka-coal);-webkit-appearance:none;appearance:none;cursor:pointer;
background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23141419' stroke-width='2'><path d='M6 9l6 6 6-6'/></svg>");background-repeat:no-repeat;background-position:right 12px center}
.eka-pick.done{opacity:.5;pointer-events:none}

/* szybkie odpowiedzi */
.eka-qr{display:flex;flex-wrap:wrap;gap:8px;animation:ekaIn .3s ease both}
.eka-qr button,.eka-qr a{font-size:14px;font-weight:500;color:var(--eka-coal)!important;background:#fff!important;border:1px solid var(--eka-coal)!important;padding:9px 14px!important;cursor:pointer;min-height:40px;line-height:1.3;text-decoration:none;display:inline-flex;align-items:center}
.eka-qr button:hover,.eka-qr a:hover{background:var(--eka-coal)!important;color:#fff!important}
.eka-qr a.pri{background:var(--eka-red)!important;border-color:var(--eka-red)!important;color:#fff!important}
.eka-qr a.pri:hover{background:var(--eka-red2)!important;border-color:var(--eka-red2)!important}

/* przyciski */
.eka-btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 22px!important;border:0!important;background:var(--eka-red)!important;color:#fff!important;font-weight:600;font-size:15px;cursor:pointer;line-height:1;transition:background .15s;text-decoration:none}
.eka-btn:hover{background:var(--eka-red2)!important}
.eka-btn[disabled]{opacity:.6;cursor:wait}

/* formularz kontaktu */
.eka-form{background:var(--eka-bone);border:1px solid var(--eka-hair);padding:18px;display:flex;flex-direction:column;gap:12px;animation:ekaIn .3s ease both}
.eka-form label.f{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--eka-coal)}
.eka-form label.f small{font-weight:400;color:var(--eka-smoke)}
.eka-form input[type=email],.eka-form input[type=text],.eka-form input[type=tel],.eka-form select{width:100%;height:46px;border:1px solid var(--eka-line);background:#fff;padding:0 12px;font-size:16px;color:var(--eka-coal);min-width:0}
.eka-form input:focus,.eka-form select:focus,.eka-pick select:focus{outline:none;border-color:var(--eka-coal);box-shadow:0 0 0 2px rgba(20,20,25,.12)}
.eka-tel{display:grid;grid-template-columns:116px minmax(0,1fr);gap:6px}
.eka-tel select{padding:0 8px;font-size:15px}
.eka-ck{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;line-height:1.5;color:var(--eka-txt);font-weight:400}
.eka-ck input{width:18px;height:18px;margin:1px 0 0;flex:none;accent-color:var(--eka-red)}
.eka-ck a{color:var(--eka-red);text-decoration:underline}
.eka-err{font-size:13px;color:#B3261E;min-height:0}
.eka-err:empty{display:none}
.eka-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px}
.eka-alt{font-size:13.5px;color:var(--eka-coal);text-decoration:underline;text-underline-offset:3px}
.eka-alt:hover{color:var(--eka-red)}

/* potwierdzenie */
.eka-ok{background:var(--eka-bone);border:1px solid var(--eka-hair);padding:18px;display:flex;gap:14px;align-items:flex-start;font-size:15px;animation:ekaIn .3s ease both}
.eka-ok i{width:26px;height:26px;flex:none;background:var(--eka-ok);position:relative}
.eka-ok i::after{content:"";position:absolute;left:9px;top:5px;width:6px;height:12px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}
.eka-ok b{display:block;margin-bottom:4px;font-family:var(--eka-fd);font-weight:700}
.eka-ok a{color:var(--eka-red);font-weight:600}

/* pole pytania */
.eka-in{display:flex;gap:8px;padding:14px 20px 8px;border-top:1px solid var(--eka-hair);flex:none;margin:0}
.eka-in input{flex:1;min-width:0;height:48px;border:1px solid var(--eka-line);background:var(--eka-bone);padding:0 14px;font-size:16px;color:var(--eka-coal)}
.eka-in input:focus{outline:none;border-color:var(--eka-coal);background:#fff}
.eka-in button{width:48px;height:48px;flex:none;border:0!important;background:var(--eka-coal)!important;color:#fff!important;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0!important}
.eka-in button:hover{background:var(--eka-red)!important}
.eka-ft{font-size:11.5px;line-height:1.45;color:var(--eka-smoke);padding:0 20px 12px;flex:none}
.eka-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.eka-sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@keyframes ekaIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes ekaDot{0%,100%{opacity:.25}50%{opacity:1}}

/* wariant w treści strony */
.eka-inline .eka-card{box-shadow:0 34px 80px -36px rgba(0,0,0,.55)}
.eka-inline .eka-log{height:auto;min-height:250px;max-height:430px}

/* przycisk pływający i panel */
.eka-fab{position:fixed;right:24px;bottom:var(--eka-bottom,24px);z-index:9990;display:flex;align-items:center;gap:12px;background:#fff!important;border:1px solid var(--eka-hair)!important;box-shadow:0 18px 50px -18px rgba(20,20,25,.45);padding:9px 18px 9px 9px!important;cursor:pointer;color:var(--eka-coal)!important;transition:transform .2s,opacity .2s,bottom .2s}
.eka-fab:hover{transform:translateY(-2px)}
.eka-fab .eka-av{width:40px;height:40px;font-size:14px}
.eka-fab span.t{display:flex;flex-direction:column;text-align:left;line-height:1.3}
.eka-fab b{font-family:var(--eka-fd);font-size:15px;font-weight:700}
.eka-fab small{font-size:12.5px;color:var(--eka-smoke)}
.eka-fab.near,.eka-fab.hid{opacity:0;pointer-events:none;transform:translateY(10px)}
.eka-pan{position:fixed;right:24px;bottom:var(--eka-bottom,24px);z-index:9991;width:410px;height:min(660px,calc(100vh - 48px));height:min(660px,calc(100dvh - 48px));display:flex;flex-direction:column;opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity .2s,transform .2s,visibility 0s .2s;box-shadow:0 30px 90px -30px rgba(20,20,25,.5)}
.eka-pan.open{opacity:1;visibility:visible;transform:none;transition:opacity .2s,transform .2s}
.eka-pan .eka-card{height:100%}

@media (max-width:700px){
.eka-fab{right:14px;bottom:var(--eka-bottom,14px);padding:8px!important}
.eka-fab span.t{display:none}
.eka-pan{left:0;right:0;top:0;bottom:0;width:auto;height:100%;box-shadow:none}
.eka-pan .eka-hd{padding-top:calc(16px + env(safe-area-inset-top,0px))}
.eka-pan .eka-ft{padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}
.eka-log{padding:16px}
.eka-hd,.eka-in{padding-left:16px;padding-right:16px}
.eka-ft{padding-left:16px;padding-right:16px}
.eka-m{max-width:94%}
.eka-tel{grid-template-columns:104px minmax(0,1fr)}
.eka-inline .eka-log{max-height:400px;min-height:230px}
}
@media (prefers-reduced-motion:reduce){.eka *{animation:none!important;transition:none!important}}
