/* =========================================================
   KOZAKWEB — WOO NOTICES / CHECKOUT UI
========================================================= */

:root{
  --kw-bg: #111111;
  --kw-text: #f7f7f7;
  --kw-info: #ffd54b;
  --kw-success: #b7ff4f;
  --kw-error: #ff4b4b;
  --kw-btn-bg: #f8f8f8;
  --kw-btn-text: #111111;
  --kw-radius-lg: 26px;
  --kw-radius-md: 22px;
  --kw-radius-pill: 999px;
  --kw-shadow-lg: 0 16px 40px rgba(0,0,0,0.28);
  --kw-shadow-btn: 0 10px 24px rgba(0,0,0,0.25);
  --kw-border-light: rgba(255,255,255,0.18);
}

/* reset */
.woocommerce-notices-wrapper,
.woocommerce-NoticeGroup,
.woocommerce-message,
.woocommerce-error,
.woocommerce-info{
  margin: 0;
  padding: 0;
}

/* wrapper */
.woocommerce-notices-wrapper,
.woocommerce-NoticeGroup{
  position: fixed;
  left: 50%;
  top: 110px;
  transform: translateX(-50%);
  width: min(90vw, 720px);
  z-index: 9999;
  pointer-events: none;
}

/* pojedynczy notice */
.woocommerce-message,
.woocommerce-error,
.woocommerce-info{
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  list-style: none;
  pointer-events: auto;
  margin-bottom: 0.75rem;
  padding: 1.1rem 1.4rem 1.15rem;
  border: none;
  border-radius: var(--kw-radius-lg);
  background: var(--kw-bg);
  color: var(--kw-text);
  font-size: 0.95rem;
  line-height: 1.4;
  box-shadow: var(--kw-shadow-lg);
  opacity: 0;
  transform: translateY(-10px);
  animation: kw-notice-in 0.35s ease-out forwards;
}

.woocommerce-message{ border-left: 4px solid var(--kw-success); }
.woocommerce-error{ border-left: 4px solid var(--kw-error); }
.woocommerce-info{ border-left: 4px solid var(--kw-info); }

.woocommerce-error li,
.woocommerce-message li,
.woocommerce-info li{
  list-style: none;
  margin: 0;
  padding: 0;
}

.woocommerce-message .button,
.woocommerce-error .button,
.woocommerce-info .button{
  position: relative;
  z-index: 1;
  margin-left: auto;
  padding: 0.55rem 1.2rem;
  border: none;
  border-radius: var(--kw-radius-pill);
  background: var(--kw-btn-bg);
  color: var(--kw-btn-text);
  font-weight: 600;
  font-size: 0.9rem;
  text-decoration: none;
  box-shadow: var(--kw-shadow-btn);
}

.woocommerce-message .button:hover,
.woocommerce-error .button:hover,
.woocommerce-info .button:hover{
  background: var(--kw-info);
  color: var(--kw-btn-text);
}

@keyframes kw-notice-in{
  to{
    opacity: 1;
    transform: translateY(0);
  }
}

.woocommerce-message.kw-notice-hide,
.woocommerce-error.kw-notice-hide,
.woocommerce-info.kw-notice-hide{
  opacity: 0;
  transform: translateY(-6px);
  transition: opacity 0.25s ease, transform 0.25s ease;
}

.kw-notice-close{
  position: absolute;
  top: 10px;
  right: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 22px;
  height: 22px;
  border: 1px solid var(--kw-border-light);
  border-radius: var(--kw-radius-pill);
  background: rgba(255,255,255,0.08);
  color: #f5f5f5;
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
  transition: background 0.15s ease, transform 0.15s ease, opacity 0.15s ease;
}

.kw-notice-close:hover{
  background: rgba(255,255,255,0.18);
  transform: scale(1.05);
}

@media (max-width: 768px){
  .woocommerce-notices-wrapper,
  .woocommerce-NoticeGroup{
    top: 90px;
    width: min(94vw, 540px);
  }

  .woocommerce-message,
  .woocommerce-error,
  .woocommerce-info{
    padding: 0.9rem 1rem;
    border-radius: var(--kw-radius-md);
  }

  .woocommerce-message .button,
  .woocommerce-error .button,
  .woocommerce-info .button{
    padding: 0.45rem 0.9rem;
    font-size: 0.8rem;
  }

  .kw-notice-close{
    top: 8px;
    right: 10px;
  }
}