/*
Theme Name: Feast CMS
Theme URI: https://feastcreative.com/
Author: Feast (Donovan Shores)
Author URI: https://feastcreative.com/
Description: FeastCMS customisations for Pro by Themeco.
Version: 1.1.1
Template: pro
*/

:root { --fc-red: rgb(254, 67, 50); --fc-red-dark: #e03b2e; --fc-red-alt: #fe4332; }

/* Admin bar */
#wp-admin-bar-feastcms-dev-mode-active > .ab-item {
  background-color: #ff0000 !important;
  color: #ffffff !important;
  font-weight: bold;
}

/* Welcome panel */
.wp-admin #welcome-panel.welcome-panel { background: #fff !important; }

.wp-admin #welcome-panel .fc-welcome-panel,
.wp-admin #welcome-panel .fc-welcome-wrap {
  max-width: 1200px;
  padding: 2em 1em;
  background: #fff;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  border-left: 4px solid var(--fc-red);
}

.wp-admin #welcome-panel .fc-welcome-logo,
.wp-admin #welcome-panel .fc-welcome-head img {
  display: block;
  max-width: 160px;
  height: auto;
  margin: 0 0 20px;
}

.wp-admin #welcome-panel .fc-welcome-panel p,
.wp-admin #welcome-panel .fc-welcome-wrap p {
  font-size: 14px;
  color: #444;
  margin: 0 0 20px;
}

.wp-admin #welcome-panel .fc-welcome-panel a,
.wp-admin #welcome-panel .fc-welcome-wrap a {
  color: var(--fc-red);
  text-decoration: none;
}

.wp-admin #welcome-panel .fc-welcome-panel h2,
.wp-admin #welcome-panel .fc-welcome-wrap h2 {
  font-size: 20px;
  margin: 2em 0 1em;
  font-weight: 600;
  color: #000;
}

.wp-admin #welcome-panel .fc-card-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(220px, 1fr));
  gap: 14px;
}

@media (max-width: 1200px) {
  .wp-admin #welcome-panel .fc-card-grid { grid-template-columns: repeat(3, minmax(220px, 1fr)); }
}
@media (max-width: 900px) {
  .wp-admin #welcome-panel .fc-card-grid { grid-template-columns: repeat(2, minmax(220px, 1fr)); }
}
@media (max-width: 600px) {
  .wp-admin #welcome-panel .fc-card-grid { grid-template-columns: 1fr; }
}

.wp-admin #welcome-panel .fc-card {
  background: #fff;
  border: 1px solid #e5e5e5;
  border-radius: 10px;
  padding: 14px 16px;
  display: flex;
  flex-direction: column;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
  min-height: 104px;
}

.wp-admin #welcome-panel .fc-card .fc-icon,
.wp-admin #welcome-panel .fc-card .fc-icon .dashicons {
  color: var(--fc-red-alt) !important;
  font-size: 22px !important;
  line-height: 1;
  margin: 0 0 8px;
}

.wp-admin #welcome-panel .fc-card h3 {
  margin: 0 0 6px;
  font-weight: 600;
  font-size: 16px;
  color: #222;
}

.wp-admin #welcome-panel .fc-card .fc-welcome-links {
  margin-top: auto !important;
  padding-top: 6px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.wp-admin #welcome-panel .fc-card .fc-welcome-links a {
  display: inline-block;
  margin: 0;
  padding: 0 !important;
  background: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 14px;
  font-weight: 400;
  color: var(--fc-red-alt) !important;
  text-decoration: none !important;
}

.wp-admin #welcome-panel .fc-card .fc-welcome-links a:hover {
  text-decoration: none !important;
  opacity: 0.8;
}

.wp-admin #welcome-panel .fc-welcome-contact {
  margin-top: 2em;
  font-size: 14px;
  color: #555;
  line-height: 1.6;
}

/* Admin menu */
#adminmenu,
#adminmenuback,
#adminmenuwrap { background-color: var(--fc-red) !important; }

#adminmenu a {
  background-color: var(--fc-red) !important;
  color: #ffffff !important;
  font-weight: 500;
}

#adminmenu a:hover,
#adminmenu li.menu-top:hover > a,
#adminmenu .wp-has-current-submenu > a,
#adminmenu .wp-menu-open > a,
#adminmenu .wp-submenu a:hover {
  background-color: var(--fc-red-dark) !important;
  color: #ffffff !important;
}

#adminmenu .wp-submenu,
#adminmenu .wp-submenu a { background-color: var(--fc-red-dark) !important; }

#adminmenu .update-plugins {
  background: #111 !important;
  color: #fff !important;
  border-radius: 50% !important;
}

#adminmenu .wp-menu-image:before { color: #ffffff !important; }

#adminmenu .wp-menu-image img {
  filter: brightness(0) invert(1) !important;
  opacity: 1 !important;
  background: none !important;
}

#adminmenu .wp-menu-image.svg {
  filter: brightness(0) invert(1) !important;
  background-color: transparent !important;
  background-blend-mode: lighten;
  opacity: 1 !important;
}

#adminmenu .wp-menu-image *,
#adminmenu .wp-menu-image *::before,
#adminmenu .wp-menu-image *::after {
  color: #ffffff !important;
  fill: #ffffff !important;
  stroke: none !important;
}

#adminmenu li.wp-has-submenu:hover:after,
#adminmenu li.wp-has-submenu.focused:after,
#adminmenu li.wp-has-current-submenu:after,
#adminmenu li.wp-has-submenu::after,
#adminmenu li.wp-has-current-submenu::after,
#adminmenu li.wp-has-submenu:hover::after { border-right-color: #ffffff !important; }

#collapse-menu { background-color: var(--fc-red) !important; }

#collapse-menu .dashicons,
#collapse-menu .wp-menu-name,
#collapse-menu .collapse-button-label,
#collapse-button .collapse-button-icon:after { color: #ffffff !important; }

#toplevel_page_feastcms-settings .wp-menu-image img {
  width: 20px;
  height: 20px;
  object-fit: contain;
  margin-top: -2px;
}

/* Login */
#login h1 { text-align: center; }

#login h1 a {
  background-image: url('assets/img/feast.svg');
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  width: 100%;
  height: 84px;
}

body.login {
  background: #f5f5f5;
  align-content: center;
  padding: 20px 0;
}

body.login #login {
  width: 80vw;
  max-width: 500px;
  background: #fff;
  padding: 40px 30px;
  border-radius: 10px;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.07);
  border-top: 5px solid var(--fc-red-alt);
}

.login label {
  font-weight: 600;
  color: #333;
  margin: 0 0 6px;
  display: block;
}

.login .input {
  width: 100%;
  padding: 12px 14px;
  border-radius: 5px;
  border: 1px solid #ccc;
  background: #fff;
  font-size: 15px;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.login .input:focus {
  border-color: var(--fc-red-alt);
  box-shadow: 0 0 2px var(--fc-red-alt);
}

.login #wp-submit {
  background-color: var(--fc-red-alt);
  border: none;
  border-radius: 5px;
  padding: 0 12px;
  font-size: 15px;
  font-weight: bold;
  text-transform: uppercase;
  color: #fff;
  cursor: pointer;
  transition: background-color 0.3s ease;
}

.login #wp-submit:hover { background-color: #cc372a; }

.login .button.wp-hide-pw {
  background: transparent !important;
  border: none;
  box-shadow: none;
  padding: 0;
}

.login .button.wp-hide-pw .dashicons {
  color: var(--fc-red-alt) !important;
  font-size: 20px;
  opacity: 0.8;
}

.login #nav a,
.login #backtoblog a {
  color: #777 !important;
  font-size: 14px;
}

.login #nav a:hover,
.login #backtoblog a:hover { color: var(--fc-red-alt) !important; }

.login .language-switcher { display: none; }

.login .language-switcher select {
  border-radius: 4px;
  border: 1px solid var(--fc-red-alt);
}

.login .language-switcher .button {
  background-color: transparent;
  color: var(--fc-red-alt);
  border-color: var(--fc-red-alt);
  transition: all 0.2s ease;
}

.login .forgetmenot {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px !important;
}

.login .forgetmenot input[type="checkbox"] { margin: 0; }
.login .forgetmenot label { margin: 0; }

.menu_pto,
#cpt_info_box { display: none; }

/* 404 */
.fc-404-wrapper { display:flex; justify-content:center; align-items:center; min-height:80vh; padding:40px 20px; background:#f5f5f5; font-family:"Open Sans", sans-serif; text-align:center; }
.fc-404-content h1 { font-size:72px; margin:0 0 10px; color:#111; }
.fc-404-content h2 { font-size:24px; margin:0 0 20px; color:#333; }
.fc-404-content p { font-size:16px; color:#555; margin:0 0 30px; }
.fc-404-home { display:inline-block; padding:10px 20px; background:#222; color:#fff; text-decoration:none; border-radius:4px; font-weight:bold; font-size:14px; }
.fc-404-home:hover { background:#000; }
