/* === cookies.css === */
.cookie-consent {
  position: fixed;
  bottom: 20px;
  left: 20px;
  right: 20px;
  z-index: 1000;
  background: #fff;
  border: 1px solid #ccc;
  box-shadow: 0 4px 10px rgba(0, 0, 0, .15);
  padding: 1rem;
  max-width: 600px;
  margin: auto;
  border-radius: 8px;
  font-size: .9rem;
  line-height: 1.4;
}
.cookie-consent .cookie-box {
  display: flex;
  flex-direction: column;
  gap: .75rem;
}
.cookie-actions {
  display: flex;
  gap: .5rem;
  justify-content: flex-end;
}
.btn-accept {
  background: #16a34a;
  color: #fff;
  padding: .5rem 1rem;
  border: none;
  border-radius: 6px;
  cursor: pointer;
}
.btn-decline {
  background: #ef4444;
  color: #fff;
  padding: .5rem 1rem;
  border: none;
  border-radius: 6px;
  cursor: pointer;
}

/* === chat.css === */
/* Przycisk */
#chat-toggle{
  position:fixed; right:20px; bottom:20px; z-index:9999;
  border:none; border-radius:999px; padding:12px 16px; cursor:pointer;
  box-shadow:0 6px 20px rgba(0,0,0,.2); font-weight:600; background:#0369a1; color:#fff;
}
#chat-badge{
  position:absolute; top:-6px; right:-6px; background:#ef4444; color:#fff;
  border-radius:999px; font-size:12px; padding:0 6px; line-height:18px; min-width:18px; text-align:center; display:none;
}
#chat-toggle .pulse{
  position:absolute; right:-6px; bottom:-6px; width:10px; height:10px; border-radius:9999px; background:#22c55e;
  box-shadow:0 0 0 0 rgba(34,197,94,.7); animation:pulse 1.8s infinite;
}
@keyframes pulse {0%{transform:scale(1);opacity:.8}70%{transform:scale(1.9);opacity:0}100%{opacity:0}}

/* Panel */
#chat-panel{
  position:fixed; right:20px; bottom:90px; width:min(420px,92vw); max-height:70vh;
  background:#fff; border-radius:16px; box-shadow:0 12px 32px rgba(0,0,0,.25);
  display:flex; flex-direction:column; overflow:hidden; z-index:9999; border:1px solid #e5e7eb; display:none;
}
#chat-header{ padding:10px 14px; font-weight:700; border-bottom:1px solid #eee; display:flex; align-items:center; justify-content:space-between;}
#chat-title{ font-weight:800; }
#chat-actions{ display:flex; gap:8px; }
.btn-ghost{ font-size:14px; padding:6px 10px; border:1px solid #e5e7eb; border-radius:8px; background:#fff; cursor:pointer }

#chat-log{ padding:12px; overflow-y:auto; height:42vh; line-height:1.4; background:#fff;}
.msg{ margin:8px 0; }
.msg.me{ text-align:right; }
.msg.bot{ text-align:left; }
.bubble{ display:inline-block; padding:8px 10px; border-radius:12px; max-width:90%; background:#f1f5f9; white-space:pre-wrap; }
.me .bubble{ background:#e0f2fe; }

#chat-form{ display:flex; gap:8px; padding:12px; border-top:1px solid #eee; }
#chat-input{ flex:1; padding:10px; border:1px solid #e5e7eb; border-radius:8px; }
.btn{ padding:8px 12px; border-radius:8px; border:none; cursor:pointer }
.btn.primary{ background:#0369a1; color:#fff }
.btn.disabled{ background:#cbd5e1; color:#475569; cursor:default }

/* Dymka teaser (jednorazowa w sesji) */
#chat-teaser{
  position:fixed; right:90px; bottom:90px; background:#111827; color:#fff; border-radius:12px; padding:10px 12px;
  box-shadow:0 10px 25px rgba(0,0,0,.2); z-index:9999; font-size:14px; display:none;
}
#chat-teaser:after{ content:""; position:absolute; right:-6px; bottom:10px; border:6px solid transparent; border-left-color:#111827; }

/* SR-only */
.sr-only{ position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,1px,1px); white-space:nowrap; border:0;}


/* === policy.css === */
.policy-container {
  max-width: 900px;
  margin: auto;
  padding: 2rem 1rem;
}
.policy-container h1 {
  font-size: 2rem;
  margin-bottom: 1rem;
  color: #3e7979;
}
.policy-container h2 {
  font-size: 1.5rem;
  margin-top: 2rem;
  margin-bottom: .5rem;
  color: #3e7979;
}
.policy-container p {
  margin-bottom: 1rem;
  font-size: 1rem;
  line-height: 1.5;
}
.policy-container ul {
  list-style: disc;
  padding-left: 1.5rem;
  margin-bottom: 1rem;
}

/* === policy-table.css === */
.policy-table {
  width: 100%;
  border-collapse: collapse;
  margin: 1.5rem 0;
  font-size: .95rem;
}
.policy-table th,
.policy-table td {
  border: 1px solid #ddd;
  padding: .75rem;
  text-align: left;
}
.policy-table th {
  background: #f3f4f6;
  color: #111;
  font-weight: 600;
}
.policy-table tr:nth-child(even) {
  background: #fafafa;
}
