
.avo-cc{
  --avo-cc-accent:#039c6e;
  position:fixed; z-index:9998;
  font-family:'Manrope',-apple-system,Segoe UI,sans-serif;
  color:#374151;
  opacity:0; visibility:hidden; pointer-events:none;
  transition:opacity .45s ease, transform .45s cubic-bezier(.22,1,.36,1), visibility .45s;
}
.avo-cc.is-in{opacity:1; visibility:visible; pointer-events:auto; transform:none}

/* --- общая «карточка» --- */
.avo-cc__inner{
  display:flex; align-items:center; gap:18px;
  background:rgba(255,255,255,.92);
  -webkit-backdrop-filter:blur(12px); backdrop-filter:blur(12px);
  border:1px solid rgba(17,24,39,.08);
  box-shadow:0 8px 30px rgba(17,24,39,.10);
}
.avo-cc .avo-cc__text{
  font-family:'Manrope',sans-serif !important; font-size:13.5px !important;
  font-weight:400 !important; line-height:1.5 !important;
  margin:0 !important; padding:0 !important; color:#4b5563 !important;
}
.avo-cc__text a{color:var(--avo-cc-accent); text-decoration:none; border-bottom:1px solid rgba(3,156,110,.35)}
.avo-cc__text a:hover{border-bottom-color:var(--avo-cc-accent)}
.avo-cc__actions{display:flex; align-items:center; gap:10px; flex-shrink:0}
/* !important — виджет живёт внутри чужого шаблона, стили сайта не должны его ломать */
.avo-cc .avo-cc__ok{
  appearance:none; border:0 !important; cursor:pointer; margin:0 !important;
  background:var(--avo-cc-accent) !important; color:#fff !important;
  font-family:'Manrope',sans-serif !important; font-size:13.5px !important;
  font-weight:600 !important; line-height:1 !important; text-transform:none !important;
  padding:12px 22px !important; border-radius:10px !important;
  width:auto !important; height:auto !important; min-width:0 !important;
  white-space:nowrap; box-shadow:none !important;
  transition:background .2s ease, transform .12s ease;
}
.avo-cc .avo-cc__ok:hover{background:#02875f !important}
.avo-cc .avo-cc__ok:active{transform:translateY(1px)}
.avo-cc .avo-cc__close{
  appearance:none; background:none !important; border:0 !important; cursor:pointer;
  margin:0 !important; padding:0 !important;
  width:30px !important; height:30px !important; min-width:0 !important;
  border-radius:50% !important; color:#9ca3af !important;
  font-size:19px !important; line-height:1 !important; font-weight:400 !important;
  display:grid; place-items:center; box-shadow:none !important;
  transition:background .2s, color .2s;
}
.avo-cc .avo-cc__close:hover{background:rgba(17,24,39,.06) !important; color:#374151 !important}

/* --- A. растянутая плашка внизу --- */
.avo-cc--bar{left:0; right:0; bottom:0; transform:translateY(100%)}
.avo-cc--bar .avo-cc__inner{
  max-width:1200px; margin:0 auto 14px; padding:14px 18px;
  border-radius:14px;
}
@media(max-width:1230px){.avo-cc--bar .avo-cc__inner{margin:0 14px 14px}}
.avo-cc--bar .avo-cc__text{flex:1}
@media(max-width:640px){
  .avo-cc--bar .avo-cc__inner{flex-direction:column; align-items:stretch; gap:12px; padding:16px}
  .avo-cc--bar .avo-cc__actions{justify-content:space-between}
}

/* --- B. компактный бокс в углу --- */
.avo-cc--box{left:20px; bottom:20px; max-width:380px; transform:translateY(16px) scale(.98)}
.avo-cc--box .avo-cc__inner{
  flex-direction:column; align-items:flex-start; gap:14px;
  padding:18px 20px; border-radius:16px;
}
.avo-cc--box .avo-cc__actions{align-self:stretch; justify-content:space-between}
@media(max-width:520px){.avo-cc--box{left:12px; right:12px; bottom:12px; max-width:none}}

/* --- C. минимальный тост (почти незаметный) --- */
.avo-cc--toast{left:50%; bottom:22px; transform:translate(-50%,16px)}
.avo-cc.avo-cc--toast.is-in{transform:translate(-50%,0)}
.avo-cc--toast .avo-cc__inner{padding:8px 10px 8px 20px; border-radius:999px; gap:14px}
.avo-cc--toast .avo-cc__text{white-space:nowrap}
.avo-cc__short{display:none}                 /* короткий текст — только для тоста */
.avo-cc--toast .avo-cc__long{display:none}
.avo-cc--toast .avo-cc__short{display:inline}
.avo-cc.avo-cc--toast .avo-cc__ok{padding:9px 18px !important; border-radius:999px !important}
@media(max-width:560px){
  .avo-cc--toast{left:12px; right:12px; transform:translateY(16px)}
  .avo-cc.avo-cc--toast.is-in{transform:none}
  .avo-cc--toast .avo-cc__inner{border-radius:14px}
  .avo-cc--toast .avo-cc__text{white-space:normal}
}
@media(prefers-reduced-motion:reduce){.avo-cc{transition:opacity .2s ease}}
