/*
Theme Name:   Art for Democracy
Theme URI:    https://aviv-digital.com/
Description:  Art for Democracy theme
Author:       Aviv Digital
Author URI:   https://aviv-digital.com/
Template:     hello-elementor
Version:      1.0.0
License:      GNU General Public License v3 or later
License URI:  https://www.gnu.org/licenses/gpl-3.0.html
Text Domain:  a4d
Tags:         flexible-header, custom-colors, custom-menu, featured-images, threaded-comments, translation-ready
*/

/* Import only Assistant + Heebo + Poppins (removed Playfair Display, DM Sans) */
@import url('https://fonts.googleapis.com/css2?family=Assistant:wght@300;400;500;600;700;800&family=Heebo:wght@300;400;500;700;900&family=Poppins:wght@300;400;500;600;700&display=swap');


/* Контейнер главного фото должен быть relative, чтобы сердечко легло поверх */
.a4d-single-image-panel .a4d-media-main { position: relative; }
 
/* --- Кнопка избранного (тот же компонент, что в карточке галереи) --- */
.a4d-single-image-panel .a4d-fav-btn {
  position: absolute; top: 14px; right: 14px;
  width: 42px; height: 42px;
  display: flex; align-items: center; justify-content: center;
  border-radius: 50%; background: rgba(255, 255, 255, .85);
  -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px);
  color: #1a1a1a; cursor: pointer; z-index: 3; padding: 0;
  border: none; box-shadow: 0 2px 10px rgba(0, 0, 0, .12);
  transition: transform .2s ease, background .2s ease, color .2s ease;
}
.a4d-single-image-panel .a4d-fav-btn svg { fill: none; stroke: currentColor; stroke-width: 1.6; }
.a4d-single-image-panel .a4d-fav-btn:hover { background: #fff; transform: scale(1.08); }
.a4d-single-image-panel .a4d-fav-btn:focus-visible { outline: 2px solid #1a1a1a; outline-offset: 2px; }
.a4d-single-image-panel .a4d-fav-btn.is-fav { color: #c0392b; }
.a4d-single-image-panel .a4d-fav-btn.is-fav svg { fill: currentColor; stroke: currentColor; }
.a4d-single-image-panel .a4d-fav-btn.is-loading { opacity: .5; pointer-events: none; }
 
/* ===== Попап логина ===== */
.a4d-login-modal {
  position: fixed; inset: 0; z-index: 99999;
  display: flex; align-items: center; justify-content: center; padding: 20px;
}
.a4d-login-modal[hidden] { display: none; }
 
.a4d-login-overlay {
  position: absolute; inset: 0;
  background: rgba(20, 20, 22, .55);
  -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px);
  animation: a4dFade .25s ease;
}
 
.a4d-login-box {
  position: relative; width: 100%; max-width: 400px;
  background: #fff; padding: 46px 40px 40px;
  border-top: 3px solid #1a1a1a;
  box-shadow: 0 30px 80px rgba(0, 0, 0, .30);
  animation: a4dPop .3s cubic-bezier(.16, 1, .3, 1);
}
@keyframes a4dFade { from { opacity: 0 } to { opacity: 1 } }
@keyframes a4dPop {
  from { opacity: 0; transform: translateY(14px) scale(.98); }
  to   { opacity: 1; transform: none; }
}
 
.a4d-login-box h3::before {
  content: "FAVORITES"; display: block;
  font-size: 11px; letter-spacing: .18em; color: #b3b3b3;
  margin-bottom: 10px; font-weight: 500;
}
.a4d-login-box h3 {
  margin: 0 0 8px; font-size: 22px; line-height: 1.15;
  font-weight: 600; letter-spacing: -.01em; color: #1a1a1a;
}
.a4d-login-text { margin: 0 0 26px; color: #777; font-size: 15px; line-height: 1.5; }
 
.a4d-login-close {
  position: absolute; top: 14px; right: 16px;
  width: 34px; height: 34px;
  border: none !important; background: none !important; box-shadow: none !important;
  font-size: 26px; line-height: 1; color: #bbb; cursor: pointer;
  padding: 0; transition: color .2s ease, transform .2s ease, background .2s ease;
}
.a4d-login-close:hover {
  background: #f2f2f2 !important;
  border-radius: 50%;
  color: #1a1a1a; transform: rotate(90deg);
}
.a4d-login-close:focus-visible { outline: 2px solid #1a1a1a; outline-offset: 2px; }
 
.a4d-login-box form.login p { margin: 0 0 18px; }
.a4d-login-box form.login label {
  display: block; font-size: 11px; text-transform: uppercase;
  letter-spacing: .08em; color: #1a1a1a; font-weight: 600; margin-bottom: 7px;
}
.a4d-login-box input[type="text"],
.a4d-login-box input[type="password"] {
  width: 100%; box-sizing: border-box; padding: 13px 15px;
  border: 1px solid #ddd; border-radius: 0; background: #fafafa;
  font-size: 15px; color: #1a1a1a;
  transition: border-color .2s ease, background .2s ease;
}
.a4d-login-box input[type="text"]:focus,
.a4d-login-box input[type="password"]:focus {
  outline: none; border-color: #1a1a1a; background: #fff;
}
 
.a4d-login-box .login-remember label {
  display: inline-flex; align-items: center; gap: 8px;
  text-transform: none; letter-spacing: 0; font-weight: 400;
  font-size: 14px; color: #555; margin: 0;
}
.a4d-login-box .login-remember input { width: auto; margin: 0; }
 
.a4d-login-box .login-submit { margin: 24px 0 0; }
.a4d-login-box input[type="submit"] {
  width: 100%; padding: 14px; background: #1a1a1a; color: #fff;
  border: 1px solid #1a1a1a; border-radius: 0; cursor: pointer;
  font-size: 12px; text-transform: uppercase; letter-spacing: .1em;
  transition: background .2s ease;
}
.a4d-login-box input[type="submit"]:hover { background: #000; }
 
.a4d-login-register { margin: 20px 0 0; font-size: 13px; text-align: center; color: #777; }
.a4d-login-register a { color: #1a1a1a; text-decoration: underline; text-underline-offset: 3px; }
.a4d-login-register a:hover { color: #c0392b; }
