/* gem.css — общий для кабинетов Shepel (рефкоманда, партнёры, менеджеры проектов):
   тема Gemini по умолчанию. Источник правды — project-managers-app/public/pm.css. */
/* ══════════════════════════════════════════════════════════════════════
   ТЕМА GEMINI (по умолчанию): тёмная база + живой приглушённый градиент.
   Палитра — утверждённая палитра Gemini с визитки. Двигаются только transform
   (поворот и дрейф), без перерисовки — телефону легко. Вуаль сверху глушит
   цвет под текстом, внизу свечение ярче, как у приложения Gemini.
   ══════════════════════════════════════════════════════════════════════ */
.gembg { position: fixed; inset: 0; z-index: 0; pointer-events: none; overflow: hidden; display: none; background: #0b0b0c; }
html.gem .gembg { display: block; }
html.gem .amb { display: none; }
.gembg::before {
  content: ""; position: absolute; left: 50%; top: 50%; width: 170vmax; height: 170vmax; margin: -85vmax 0 0 -85vmax;
  background: conic-gradient(from 0deg, #4285f4, #7b6ad0, #9b72cb, #c76a9e, #d96570, #e28a45, #f9ab00, #d96570, #9b72cb, #1a73e8, #4285f4);
  filter: blur(70px); opacity: 0.30; will-change: transform;
  animation: gemTurn 60s linear infinite;
}
.gembg i { position: absolute; display: block; border-radius: 50%; filter: blur(60px); will-change: transform; }
.gembg .g1 { width: 70vmax; height: 70vmax; left: -25vmax; bottom: -30vmax; background: radial-gradient(circle, rgba(66, 133, 244, 0.55), rgba(66, 133, 244, 0) 65%); animation: gemDrift1 26s ease-in-out infinite; }
.gembg .g2 { width: 60vmax; height: 60vmax; right: -25vmax; bottom: -20vmax; background: radial-gradient(circle, rgba(217, 101, 112, 0.5), rgba(217, 101, 112, 0) 65%); animation: gemDrift2 32s ease-in-out infinite; }
.gembg .g3 { width: 55vmax; height: 55vmax; left: 10vmax; bottom: -35vmax; background: radial-gradient(circle, rgba(155, 114, 203, 0.55), rgba(155, 114, 203, 0) 65%); animation: gemDrift3 38s ease-in-out infinite; }
.gembg .g4 { width: 40vmax; height: 40vmax; right: -10vmax; top: -18vmax; background: radial-gradient(circle, rgba(249, 171, 0, 0.28), rgba(249, 171, 0, 0) 65%); animation: gemDrift1 44s ease-in-out infinite reverse; }
.gembg::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(180deg, rgba(11, 11, 12, 0.72) 0%, rgba(11, 11, 12, 0.55) 40%, rgba(11, 11, 12, 0.2) 100%);
}
@keyframes gemTurn { to { transform: rotate(360deg); } }
@keyframes gemDrift1 { 0%, 100% { transform: translate3d(0, 0, 0) scale(1); } 50% { transform: translate3d(18vw, -10vh, 0) scale(1.15); } }
@keyframes gemDrift2 { 0%, 100% { transform: translate3d(0, 0, 0) scale(1.05); } 50% { transform: translate3d(-20vw, -14vh, 0) scale(0.9); } }
@keyframes gemDrift3 { 0%, 100% { transform: translate3d(0, 0, 0) scale(0.95); } 50% { transform: translate3d(12vw, -18vh, 0) scale(1.2); } }
@media (prefers-reduced-motion: reduce) { .gembg::before, .gembg i { animation: none; } }
/* Карточки на цветном фоне — плотнее, чтобы текст читался. */
html.gem .lead, html.gem .stalert, html.gem .stat, html.gem .profile, html.gem .empty, html.gem .cc, html.gem .prod, html.gem .ptabs, html.gem .linkcard, html.gem .mrow, html.gem .todo { background-color: rgba(14, 14, 16, 0.58); }
html.gem .chips.tabs .chip:not(.on) { background-color: rgba(14, 14, 16, 0.5); }

/* Кнопка темы: показывает следующую тему. */
.themebtn svg { display: none; }
html.gem .themebtn .i-moon { display: block; }
html.dark .themebtn .i-sun { display: block; }
html.light .themebtn .i-sun, html.light .themebtn .i-moon { display: none; }
html.light .themebtn .i-gem { display: block; }
html.gem .themebtn { background: rgba(14, 14, 16, 0.5); }
html.calm .gembg::before, html.calm .gembg i, html.calm .amb i { animation-play-state: paused; }
