/* Asystent Trekkit (inc/assistant.php, assets/js/assistant.js, 11.10.2026).
   Poza Vite, jak forms.css. Płaski design motywu: bez zaokrągleń,
   kolory ze zmiennych motywu (z zapasowymi wartościami). */

.trw-asst,.trw-asst *{box-sizing:border-box;border-radius:0}
.trw-asst{
  --a-primary:var(--primary,#1A3C34);--a-accent:var(--accent,#C77B3A);--a-text:var(--text,#1E2D28);
  --a-muted:var(--gray-dark,#5f6b66);--a-line:var(--gray-light,#E3E0D8);--a-bg:#fff;--a-soft:#F6F3EC;
  display:flex;flex-direction:column;background:var(--a-bg);color:var(--a-text);font-family:var(--font,inherit);font-size:14.5px;line-height:1.5;
  border:1px solid var(--a-line)
}

/* pływające okno */
.trw-asst--floating{position:fixed;z-index:9990;right:20px;bottom:20px;width:460px;max-width:calc(100vw - 32px);height:min(700px,calc(100vh - 40px));box-shadow:0 12px 40px rgba(0,0,0,.18)}
.trw-asst--floating[hidden]{display:none}
.trw-asst--inline{width:100%;height:min(78vh,820px);min-height:520px}

.trw-asst-launch{position:fixed;z-index:9989;right:20px;bottom:20px;display:inline-flex;align-items:center;gap:10px;height:52px;padding:0 18px 0 14px;border:0;background:var(--primary,#1A3C34);color:#fff;font:inherit;font-size:14.5px;font-weight:700;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.22)}
.trw-asst-launch svg{width:24px;height:24px;fill:currentColor}
.trw-asst-launch:hover{background:var(--accent,#C77B3A)}
.trw-asst-launch:focus-visible{outline:3px solid var(--accent,#C77B3A);outline-offset:3px}
.trw-asst-launch[hidden]{display:none}

/* Nagłówek w jednej linii: tytuł i przyciski bez łamania, wszystkie
   przyciski tej samej wysokości (dawniej „Nowa rozmowa" w dwóch liniach
   miała 42 px, a „×" 26 px). */
.trw-asst-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;background:var(--a-primary);color:#fff}
.trw-asst-title{display:flex;align-items:center;gap:8px;min-width:0;font-size:15px;white-space:nowrap}
.trw-asst-title strong{overflow:hidden;text-overflow:ellipsis}
.trw-asst-badge{flex:0 0 auto;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:2px 6px;background:var(--a-accent);color:#fff;line-height:1.5}
.trw-asst-actions{display:flex;align-items:center;gap:6px;flex:0 0 auto}
.trw-asst-iconbtn{display:inline-flex;align-items:center;justify-content:center;height:32px;margin:0;border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;font:inherit;font-size:12.5px;font-weight:600;padding:0 10px;cursor:pointer;text-decoration:none;line-height:1;white-space:nowrap}
.trw-asst-iconbtn:hover{background:rgba(255,255,255,.14);color:#fff}
.trw-asst-close{width:32px;padding:0;font-size:18px}

.trw-asst-modes{display:flex;flex-wrap:wrap;gap:6px;padding:10px 12px;border-bottom:1px solid var(--a-line);background:var(--a-soft)}
.trw-asst-mode{border:1px solid var(--a-line);background:#fff;color:var(--a-text);font:inherit;font-size:12.5px;font-weight:600;padding:6px 10px;cursor:pointer}
.trw-asst-mode:hover{border-color:var(--a-primary)}
.trw-asst-mode[aria-pressed="true"]{background:var(--a-primary);border-color:var(--a-primary);color:#fff}

.trw-asst-log{flex:1 1 auto;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:10px;overscroll-behavior:contain}
.trw-asst-msg{max-width:92%}
.trw-asst-msg p{margin:0 0 .55em}
.trw-asst-msg p:last-child{margin-bottom:0}
.trw-asst-msg--user{align-self:flex-end;background:var(--a-primary);color:#fff;padding:8px 12px}
.trw-asst-msg--bot{align-self:flex-start;background:var(--a-soft);padding:10px 12px;border-left:3px solid var(--a-accent)}
.trw-asst-msg ul{margin:.3em 0 .6em;padding-left:1.2em}
.trw-asst-msg li{margin:.15em 0}
.trw-asst-msg a{color:var(--accent-dark,#9a5a24);text-decoration:underline;text-underline-offset:2px}
.trw-asst-h{margin:.7em 0 .3em;font-size:14.5px;font-weight:700}
.trw-asst-typing{color:var(--a-muted);font-style:italic}

.trw-asst-cards{display:grid;gap:6px;margin-top:8px}
.trw-asst-cards:empty{display:none}
.trw-asst-card{display:flex;flex-direction:column;gap:2px;padding:9px 11px;background:#fff;border:1px solid var(--a-line);color:var(--a-text)!important;text-decoration:none!important}
.trw-asst-card:hover{border-color:var(--a-primary)}
.trw-asst-card-type{font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--a-accent)}
.trw-asst-card-title{font-size:14px}
.trw-asst-card-meta{font-size:12px;color:var(--a-muted)}
.trw-asst-card-why{font-size:12.5px;color:var(--a-text)}

.trw-asst-fb{display:flex;align-items:center;gap:6px;margin-top:8px;font-size:12px;color:var(--a-muted)}
.trw-asst-fb:empty{display:none}
.trw-asst-fb-btn{display:inline-flex;align-items:center;border:1px solid var(--a-line);background:#fff;color:var(--a-muted);line-height:1;padding:4px 7px;cursor:pointer}
.trw-asst-fb-btn svg{width:16px;height:16px;fill:currentColor}
.trw-asst-fb-down svg{transform:scaleY(-1)}
.trw-asst-fb-btn.on{background:var(--a-primary);border-color:var(--a-primary);color:#fff}
.trw-asst-fb-btn:disabled{cursor:default;opacity:.7}
.trw-asst-fb-btn.on:disabled{opacity:1}

.trw-asst-notice{margin:0 12px 8px;padding:8px 10px;font-size:13px;border-left:3px solid var(--a-accent);background:#fdf1e0;color:#8a5312}
.trw-asst-notice--info{background:#eef4f1;border-color:var(--a-primary);color:var(--a-primary)}
.trw-asst-notice[hidden]{display:none}
.trw-asst-notice-link{color:inherit;font-weight:700;text-decoration:underline;white-space:nowrap}
.trw-asst-ts{margin:0 12px 8px}

.trw-asst-form{border-top:1px solid var(--a-line);padding:10px 12px 6px;background:#fff}
.trw-asst-input{width:100%;resize:none;font:inherit;font-size:14.5px;color:var(--a-text);border:1px solid var(--a-line);padding:9px 10px;outline:0;min-height:44px;max-height:140px}
.trw-asst-input:focus{border-color:var(--a-primary)}
.trw-asst-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:6px}
.trw-asst-count{font-size:11.5px;color:var(--a-muted)}
.trw-asst-send{border:0;background:var(--a-primary);color:#fff;font:inherit;font-size:14px;font-weight:700;padding:9px 18px;cursor:pointer}
.trw-asst-send:hover{background:var(--a-accent)}
.trw-asst-send:disabled{opacity:.55;cursor:wait}
.trw-asst-foot{margin:0;padding:4px 12px 8px;font-size:10.5px;line-height:1.4;color:var(--a-muted);background:#fff}
.trw-asst-foot a{color:inherit;text-decoration:underline}
.trw-asst button:focus-visible,.trw-asst a:focus-visible{outline:2px solid var(--a-accent);outline-offset:2px}

/* telefon: okno na cały ekran, przycisk jako ikona */
@media (max-width:600px){
  .trw-asst--floating{right:0;bottom:0;left:0;top:0;width:100%;max-width:none;height:100%;height:100dvh;border:0}
  /* okno i tak zajmuje cały ekran, a bez „Dużego okna" nagłówek mieści się w linii */
  .trw-asst-big{display:none}
  .trw-asst-launch{right:16px;bottom:16px;width:52px;padding:0;justify-content:center}
  .trw-asst-launch-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .trw-asst--inline{height:75vh;min-height:460px}
}
/* Dolny pasek „Pobierz aplikację” (.m-cta-bar, do 680 px, klasa body z
   src/modules/mobile-cta.js). Czat ma pierwszeństwo: przycisk siedzi w prawym
   końcu paska (wyśrodkowany w pionie), a pasek zostawia mu miejsce, żeby
   „×” paska nie był pod przyciskiem czatu. */
@media (max-width:680px){
  .has-m-cta-bar .trw-asst-launch{right:12px;bottom:8px;width:52px;padding:0;justify-content:center}
  .has-m-cta-bar .trw-asst-launch-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  body.has-m-cta-bar:has(> .trw-asst-launch) .m-cta-bar{padding-right:76px;gap:10px}
  body.has-m-cta-bar:has(> .trw-asst-launch) .m-cta-bar .ico{display:none}
  body.has-m-cta-bar:has(> .trw-asst-launch) .m-cta-bar .t strong,
  body.has-m-cta-bar:has(> .trw-asst-launch) .m-cta-bar .t small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}
@media print{.trw-asst-launch,.trw-asst--floating{display:none!important}}

/* strona /asystent */
.asst-page .asst-lead{font-size:17px;line-height:1.6;color:var(--gray-dark,#5f6b66);max-width:62ch;margin:0 0 22px}
.asst-page .asst-info{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:28px 0 48px}
.asst-page .asst-info section{border:1px solid var(--gray-light,#E3E0D8);background:#fff;padding:16px 18px}
.asst-page .asst-info h2{font-size:16px;margin:0 0 8px}
.asst-page .asst-info p,.asst-page .asst-info li{font-size:14px;line-height:1.55;color:var(--gray-dark,#5f6b66)}
.asst-page .asst-info ul{margin:0;padding-left:1.1em}
.trw-asst-off{padding:16px;border:1px solid var(--gray-light,#E3E0D8);background:#fff}
