/* WL Studio 3.0 — namespaced public components; no dependency on theme layout. */
:root{--wl3-accent:#287dff;--wl3-border:rgba(132,164,218,.24);--wl3-ink:#f3f7ff;--wl3-muted:#a8b9d1;--wl3-panel:#111a2b;--wl3-card:#14233a}
.wl3-chat,.wl3-config,.wl3-tools,.wl3-chooser,.wl3-portfolio{box-sizing:border-box;font-family:inherit}
.wl3-chat *,.wl3-config *,.wl3-tools *,.wl3-chooser *,.wl3-portfolio *{box-sizing:border-box}
.wl3-chat{position:fixed;right:22px;bottom:22px;z-index:99990;color:#eff6ff;max-width:calc(100vw - 32px)}
.wl3-chat__toggle{display:flex;align-items:center;gap:10px;background:#267bff;border:1px solid #6aa6ff;border-radius:999px;padding:13px 18px;color:white;box-shadow:0 14px 45px rgba(0,0,0,.4);font-weight:750;cursor:pointer;font-size:14px}
.wl3-chat__toggle span:first-child{font-size:20px}.wl3-chat__panel{position:absolute;right:0;bottom:64px;width:min(390px,calc(100vw - 32px));max-height:min(610px,calc(100dvh - 112px));overflow:hidden;display:flex;flex-direction:column;background:#0c1424;border:1px solid #385277;border-radius:22px;box-shadow:0 28px 86px #000b;color:#eef5ff}
.wl3-chat__panel[hidden],.wl3-chat__intro[hidden],.wl3-chat__messages[hidden],.wl3-chat__send[hidden],.wl3-chat__contact[hidden],.wl3-chat__error[hidden]{display:none!important}
.wl3-chat__head{display:flex;align-items:center;gap:10px;padding:15px 16px;background:linear-gradient(135deg,#14233d,#102449);border-bottom:1px solid #304866}
.wl3-chat__head strong{display:block;font-size:15px;color:#fff}.wl3-chat__head small{display:block;font-size:12px;color:#a9bdd7}.wl3-chat__head>button{margin-left:auto;border:0;background:transparent;color:#fff;font-size:24px;cursor:pointer}
.wl3-chat__mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:#287dff;color:white;font-weight:800}
.wl3-chat__intro{padding:25px 20px}.wl3-chat__intro p{color:#d5dfed;font-size:14px;line-height:1.55}.wl3-chat__intro a{color:#8cbeff}.wl3-chat__intro button,.wl3-chat__contact button{border:0;border-radius:10px;padding:12px 16px;background:#287dff;color:#fff;cursor:pointer;font-weight:700}
.wl3-chat__messages{overflow:auto;min-height:130px;flex:1;padding:18px;display:flex;flex-direction:column;gap:13px;max-height:410px}
.wl3-chat__bubble{padding:10px 13px;border:1px solid #31425d;border-radius:15px;background:#18233a;max-width:90%;align-self:flex-start}
.wl3-chat__bubble--guest{background:#175aca;border-color:#478dec;align-self:flex-end}.wl3-chat__bubble small{font-size:10px;color:#a8bfdf;display:block}.wl3-chat__bubble p{margin:3px 0 0;font-size:13px;line-height:1.5;color:white;white-space:pre-wrap;overflow-wrap:anywhere}
.wl3-chat__send{display:flex;padding:12px;gap:8px;border-top:1px solid #263b58}.wl3-chat__send textarea{flex:1;min-height:45px;max-height:90px;resize:vertical;background:#111f33;color:white;border:1px solid #3d577c;border-radius:11px;padding:10px;font:inherit;font-size:13px}.wl3-chat__send button{background:#287dff;border:0;border-radius:10px;color:white;padding:0 16px;font-size:20px;cursor:pointer}
.wl3-chat__contact{display:grid;gap:8px;padding:12px;border-top:1px solid #31425d}.wl3-chat__contact strong{font-size:12px}.wl3-chat__contact input{padding:9px;border:1px solid #405778;border-radius:8px;background:#14243b;color:#fff;font-size:13px;min-width:0}.wl3-chat__contact small{color:#b3c4db}.wl3-chat__error{padding:8px 14px;color:#ffb7b7;font-size:12px}
.wl3-config,.wl3-tools,.wl3-chooser{max-width:100%;margin:40px auto;padding:clamp(20px,4vw,48px);border:1px solid var(--wl3-border);background:linear-gradient(135deg,#101b31,#101827 80%);color:var(--wl3-ink);border-radius:26px;box-shadow:0 26px 70px #0002}
.wl3-config h2,.wl3-tools h2,.wl3-chooser h2{font-size:clamp(29px,4vw,55px);line-height:1.07;margin:10px 0 15px;color:#fff}.wl3-config h3,.wl3-tools h3{color:#fff;font-size:clamp(19px,2.5vw,26px);margin:15px 0 20px}.wl3-eyebrow{display:inline-block;color:#89b8ff;font-size:11px;letter-spacing:.17em;font-weight:800}.wl3-config p,.wl3-tools p{color:#c0cde0;line-height:1.65}
.wl3-config__header{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:30px}.wl3-config__progress{min-width:110px;color:#91bdff;font-weight:800}.wl3-config__track{background:#263854;height:7px;border-radius:99px;margin-top:12px;overflow:hidden}.wl3-config__track i{background:#287dff;display:block;height:100%;width:25%;transition:width .2s}
.wl3-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:12px}.wl3-choice{cursor:pointer;display:block;position:relative}.wl3-choice input{position:absolute;opacity:0;inset:0}.wl3-choice span{min-height:82px;display:flex;flex-direction:column;justify-content:center;gap:6px;border:1px solid #374d69;background:#142238;border-radius:16px;padding:16px;transition:background .18s,border-color .18s}.wl3-choice span strong{color:white}.wl3-choice span small{color:#a2b8d6}.wl3-choice input:checked+span{border-color:#509aff;background:#173b74}.wl3-choice input:focus-visible+span{outline:3px solid #fff;outline-offset:3px}
.wl3-label{display:grid;gap:10px;font-weight:650;color:#eaf0ff;margin:16px 0}.wl3-label input[type=range]{accent-color:#287dff;width:100%}.wl3-config input:not([type=radio]):not([type=checkbox]):not([type=range]),.wl3-config textarea,.wl3-config select{width:100%;background:#17243a;border:1px solid #3d516d;border-radius:12px;padding:13px;color:#fff;font:inherit;min-width:0}.wl3-config__contacts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:12px}.wl3-config__contacts label{display:grid;gap:8px;color:#dfe8f5}.wl3-config__summary{white-space:pre-line;padding:16px;border:1px solid #34547f;border-radius:15px;background:#12294a;margin:15px 0;color:#deedff}.wl3-config__footer{display:flex;gap:10px;justify-content:flex-end;padding-top:20px}.wl3-button{padding:14px 22px;border-radius:12px;background:#287dff;color:#fff;border:1px solid #4190ff;font-weight:750;cursor:pointer}.wl3-button--subtle{background:#192a46}.wl3-button[hidden]{display:none}.wl3-fineprint{font-size:12px}.wl3-fineprint a{color:#9ec9ff}.wl3-trap{position:absolute;left:-10000px}
.wl3-chooser__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(225px,100%),1fr));gap:12px}.wl3-chooser__grid a{display:flex;flex-direction:column;min-height:150px;position:relative;padding:22px;background:#172b46;border:1px solid #38567c;border-radius:17px;text-decoration:none;color:#fff;gap:10px}.wl3-chooser__grid a strong{font-size:20px}.wl3-chooser__grid a span{color:#bbcbdf}.wl3-chooser__grid a b{position:absolute;right:22px;bottom:15px;color:#8ec1ff}
.wl3-tools__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(310px,100%),1fr));gap:20px}.wl3-tools__grid section{padding:22px;border-radius:18px;border:1px solid #354962;background:#15243a}.wl3-tools label{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#d6e6f8;margin:12px 0}.wl3-tools input{min-width:0;max-width:145px;border:1px solid #41618b;background:#102139;color:#fff;border-radius:8px;padding:7px}.wl3-tools input[type=color]{width:80px;height:40px;padding:2px}.wl3-swatches{display:grid;grid-template-columns:repeat(5,1fr);gap:3px;margin:15px 0}.wl3-swatches span{height:86px;display:flex;align-items:end;justify-content:center;font-size:10px;padding:5px;color:#fff;text-shadow:0 1px 5px #000;min-width:0}.wl3-tools output{display:block;font-size:30px;font-weight:800;color:#fff}.wl3-tools button{background:#287dff;color:#fff;border:0;border-radius:10px;padding:10px 15px;cursor:pointer}.wl3-tools small{display:block;color:#aebed2}
.wl3-portfolio{margin:35px 0}.wl3-filter{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.wl3-filter button{background:#18243a;border:1px solid #3a4a65;color:#e9f2ff;padding:10px 15px;border-radius:99px;cursor:pointer}.wl3-filter button[aria-pressed=true]{background:#267bff;border-color:#267bff}.wl3-portfolio__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(330px,100%),1fr));gap:18px}.wl3-portfolio article[hidden]{display:none}.wl3-portfolio article{background:#121e30;border:1px solid #365072;border-radius:20px;overflow:hidden}.wl3-portfolio article a{display:block;color:white;text-decoration:none}.wl3-portfolio img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}.wl3-portfolio__placeholder{display:grid;place-items:center;aspect-ratio:16/10;font-size:60px;color:#93c2ff;background:radial-gradient(circle at 20% 20%,#214f8e,#101c31)}.wl3-portfolio__body{padding:22px}.wl3-portfolio__body h3{font-size:24px;color:white;margin:10px 0}.wl3-portfolio__body p{color:#afc1da}.wl3-portfolio__body strong{color:#91bcff}.wl3-empty{padding:30px;border:1px dashed #3a557e;border-radius:18px;color:#c2d4e9}
@media(max-width:600px){.wl3-chat{right:12px;bottom:12px}.wl3-chat__panel{max-height:calc(100dvh - 100px)}.wl3-chat__toggle{padding:11px 13px}.wl3-config,.wl3-tools,.wl3-chooser{padding:18px;border-radius:18px}.wl3-config__header{display:block}.wl3-config__contacts{grid-template-columns:1fr}.wl3-tools__grid{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.wl3-choice span,.wl3-config__track i{transition:none}}

.wl3-tools select{min-width:140px;border:1px solid #41618b;background:#102139;color:#fff;border-radius:8px;padding:9px}.wl3-tools input[type=checkbox]{width:17px;min-width:17px;accent-color:#2f88ff}.wl3-font-sample{border:1px solid #3c5c80;border-radius:14px;background:#0b192d;padding:20px;display:grid;gap:12px}.wl3-font-sample strong{font-size:clamp(24px,3vw,38px);color:#fff}.wl3-font-sample span{color:#cbdaeb;font-size:15px}

/* WL Live Gemini opt-in */
.wl4-gemini-consent{margin:8px 14px 4px;padding:12px;border-radius:12px;background:#0f2342;color:#dbeafe;border:1px solid rgba(100,160,255,.25);font-size:12px;line-height:1.5}.wl4-gemini-consent label{display:flex;gap:10px;align-items:flex-start;cursor:pointer}.wl4-gemini-consent input{width:17px;height:17px;flex:0 0 17px;margin-top:2px;accent-color:#3b82f6}.wl4-gemini-consent a{color:#93c5fd;text-decoration:underline}.wl4-gemini-consent--active{margin-block:7px;padding-block:8px;max-height:145px;overflow:auto}.wl4-gemini-consent strong{color:#fff}.wl3-chat__panel{display:flex;flex-direction:column}.wl3-chat__panel[hidden]{display:none!important}.wl3-chat__messages{min-height:100px}.wl4-gemini-consent--active span{font-size:11px}

/* Compact Gemini consent and chat header on phones */
.wl4-gemini-consent--active{flex:0 0 auto;max-height:106px;overflow-y:auto}.wl3-chat__head .wl3-chat__sound{font-size:11px;font-weight:700;line-height:1.25;margin-left:auto;max-width:110px;min-width:65px;white-space:normal;padding:7px 5px;background:#203c66;border-radius:9px}.wl3-chat__head [data-wl3-close]{margin-left:0;font-size:23px;padding:0 4px;flex:0 0 auto}.wl3-chat__head>span:nth-child(2){min-width:0;flex:1}.wl3-chat__mark{flex-shrink:0}@media(max-width:380px){.wl3-chat__head{padding:11px 10px;gap:7px}.wl3-chat__head strong{font-size:13px}.wl3-chat__head small{font-size:10px}.wl3-chat__mark{width:35px;height:35px}}

/* 3.4.2 — start AI bez checkboxa, czytelna informacja i przycisk nowej rozmowy. */
.wl4-ai-disclosure{border:1px solid rgba(100,160,255,.3);background:#102440;border-radius:13px;padding:12px 14px;margin:12px 0;color:#d9e7fc;font-size:12px;line-height:1.5}
.wl4-ai-disclosure strong{color:#fff}.wl4-ai-disclosure p{font-size:12px;line-height:1.5;margin:7px 0;color:#d9e7fc}.wl4-ai-disclosure a{color:#a3ccff;text-decoration:underline}
.wl3-chat__intro{overflow-y:auto;min-height:0}.wl3-chat__intro>[data-wl3-start]{width:100%;font-weight:750}
.wl3-chat__toolbar{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:8px 12px;background:#0e1b2e;border-bottom:1px solid #263b58;font-size:10px;color:#a3b4cc;flex-wrap:wrap}
.wl3-chat__toolbar[hidden]{display:none!important}.wl3-chat__toolbar button{border:1px solid #39577e;background:#142c4c;color:#d9e9ff;padding:7px 9px;border-radius:8px;font:inherit;font-size:11px;cursor:pointer;min-height:30px}.wl3-chat__toolbar button:hover,.wl3-chat__toolbar button:focus-visible{background:#1f4574}
@media(max-width:480px){.wl3-chat__intro{padding:16px 13px}.wl4-ai-disclosure{padding:10px}.wl3-chat__toolbar span{display:none}.wl3-chat__toolbar button{width:100%;text-align:center}}

/* WL Live 3.4.3 — minimalna informacja i rozmowa bez formularza danych. */
.wl3-chat__intro{padding:18px 18px 20px;display:flex;flex-direction:column;gap:12px}
.wl3-chat__intro>p:first-child{margin:0;font-size:15px;line-height:1.55;font-weight:550;color:#f0f6ff}
.wl3-chat__intro .wl3-chat__privacy-note{margin:0;color:#b3c5dd;font-size:11px;line-height:1.5}
.wl3-chat__privacy-note a{color:#9ac8ff;text-decoration:underline;text-underline-offset:2px}
.wl3-chat__messages{min-height:0;max-height:none;flex:1 1 auto;overscroll-behavior:contain}
.wl3-chat__panel{height:auto;max-height:calc(100dvh - 110px)}
.wl3-chat[data-active='1'] .wl3-chat__panel{height:min(640px,calc(100dvh - 110px))}
.wl3-chat__panel .wl3-chat__send{flex:0 0 auto}
.wl3-chat__toolbar a{color:#9ac8ff}
@media(max-width:480px){
 .wl3-chat__intro{padding:14px;gap:10px}
 .wl3-chat__panel{height:auto;max-height:calc(100dvh - 100px)}
 .wl3-chat[data-active='1'] .wl3-chat__panel{height:calc(100dvh - 100px)}
 .wl3-chat__toolbar{flex-wrap:nowrap}
 .wl3-chat__toolbar button{width:auto;white-space:normal;flex:0 1 auto;font-size:10px}
}
