/* Celvesta admin: walnut everywhere. Loaded after all Yeti styles. */
#wrapper #title_bar #titlebar_right .action_item a,
#wrapper #title_bar .action_items a,
#wrapper #title_bar #titlebar_right div.batch_actions_selector a,
#wrapper #active_admin_content div.table_tools div.batch_actions_selector a,
#wrapper #active_admin_content div.table_tools ul.scopes li a,
#wrapper #active_admin_content div.table_tools div.scopes > ul li a,
#wrapper .sidebar_section.panel > h3,
#wrapper .panel > h3, .panel > h3,
form input[type=submit], form input[type=button], form button[type=submit],
a.button, a.button:link, a.button:visited, .button,
fieldset.actions > ol > li.button_action > button,
form fieldset.inputs legend span,
#ui-datepicker-div div.ui-datepicker-header,
.pagination span.page.current,
.ui-dialog .ui-dialog-titlebar,
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button:first-child,
button.scoped_collection_action_button,
#wrapper div.tabs > ul > li > a,
#wrapper .table_tools_button, #wrapper .dropdown_menu_button,
body.active_admin.index #active_admin_content .collapse_btn,
body.active_admin.index #active_admin_content .uncollapse_btn,
#sidebar #filters_sidebar_section .filter_indicator_btn_reset,
#wrapper .flashes .flash_ok_message {
  background: #3A261C !important;
  background-color: #3A261C !important;
  background-image: none !important;
  border-color: #3A261C !important;
  color: #F5F2EE !important;
  text-shadow: none !important;
}
/* hover: darker walnut, never light brown */
#wrapper #title_bar #titlebar_right .action_item a:hover,
#wrapper #title_bar .action_items a:hover,
#wrapper #title_bar #titlebar_right div.batch_actions_selector a:hover,
#wrapper #active_admin_content div.table_tools div.batch_actions_selector a:hover,
#wrapper #active_admin_content div.table_tools ul.scopes li a:hover,
#wrapper #active_admin_content div.table_tools div.scopes > ul li a:hover,
form input[type=submit]:hover, form input[type=button]:hover, form button[type=submit]:hover,
a.button:hover, .button:hover,
fieldset.actions > ol > li.button_action > button:hover,
.ui-dialog .ui-dialog-buttonpane .ui-dialog-buttonset button:first-child:hover,
button.scoped_collection_action_button:hover,
#wrapper .table_tools_button:hover, #wrapper .dropdown_menu_button:hover,
.pagination span > a:hover, .pagination span.page.current:hover {
  background: #24170F !important;
  background-color: #24170F !important;
  border-color: #24170F !important;
  color: #F5F2EE !important;
}
/* selected scope and active dashboard tab: ivory with walnut text */
#wrapper #active_admin_content div.table_tools ul.scopes li.selected a,
#wrapper #active_admin_content div.table_tools div.scopes > ul li.selected a,
#wrapper div.tabs ul > li.ui-state-active > a {
  background: #F5F2EE !important;
  background-color: #F5F2EE !important;
  color: #3A261C !important;
  border: 1px solid #3A261C !important;
}
/* dropdown list hovers, date-picker days, main-menu submenu hover */
#wrapper #title_bar #titlebar_right div.dropdown_menu div.dropdown_menu_list_wrapper ul.dropdown_menu_list li a:hover,
#wrapper #active_admin_content div.table_tools div.dropdown_menu div.dropdown_menu_list_wrapper ul.dropdown_menu_list li a:hover,
#ui-datepicker-div table.ui-datepicker-calendar tbody tr td a:hover,
#ui-datepicker-div table.ui-datepicker-calendar tbody tr td.ui-datepicker-today > a,
#wrapper #header ul.tabs li.has_nested ul.menu li.menu_item:hover > a,
#wrapper #header ul.tabs li.has_nested ul.menu li.menu_item.current > a {
  background-color: #3A261C !important;
  color: #F5F2EE !important;
}
#wrapper #header ul.tabs li.has_nested ul { background-color: #F5F2EE !important; }
#wrapper #header ul.tabs li.has_nested:hover a { border-bottom-color: #F5F2EE !important; }
#wrapper #header h1.site_title { color: #F5F2EE !important; }
#ui-datepicker-div div.ui-datepicker-header:before { border-bottom-color: #3A261C !important; }
#ui-datepicker-div table.ui-datepicker-calendar { border-color: #3A261C !important; }
input[type='radio']:checked:before { background: #3A261C !important; }
/* links */
#wrapper #active_admin_content a:not(.button) { color: #3A261C; }
#wrapper #active_admin_content a:not(.button):hover { color: #24170F; text-decoration: underline; }

/* ===== Celvesta admin login (split screen) ===== */
body.logged_out { background: #F5F2EE !important; margin: 0; }
body.logged_out #wrapper, body.logged_out #content_wrapper, body.logged_out #content_wrapper #active_admin_content { width: auto !important; max-width: none !important; margin: 0 !important; padding: 0 !important; background: transparent !important; float: none !important; }
body.logged_out #footer { display: none !important; }
body.logged_out .flashes { position: fixed; top: 16px; left: 16px; right: 16px; z-index: 20; max-width: 440px; margin-left: auto; }
body.logged_out .flashes .flash { border-radius: 8px; padding: 12px 16px; }
#cv-login { min-height: 100vh; display: flex; flex-wrap: wrap; font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; color: #3A302A; }
#cv-login .cv-brand { flex: 1 1 560px; min-width: 0; background: #3A261C; color: #F5F2EE; position: relative; overflow: hidden; display: flex; flex-direction: column; justify-content: space-between; gap: 40px; padding: 56px 64px; box-sizing: border-box; border-right: 3px solid #B08D57; }
#cv-login .cv-pattern { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0.12; pointer-events: none; }
#cv-login .cv-brand > div { position: relative; }
#cv-login .cv-brand-top { display: flex; align-items: center; gap: 14px; }
#cv-login .cv-mark { width: 44px; height: 44px; box-sizing: border-box; border: 2px solid #B08D57; border-radius: 10px; display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: 20px; }
#cv-login .cv-word { font-size: 22px; font-weight: 800; letter-spacing: 0.28em; }
#cv-login .cv-logo { max-height: 64px; max-width: 240px; object-fit: contain; }
#cv-login .cv-company { font-size: 20px; font-weight: 700; }
#cv-login .cv-brand h1 { margin: 0 0 28px; max-width: 460px; font-size: 44px; line-height: 1.15; font-weight: 700; color: #F5F2EE; text-shadow: none; }
#cv-login .cv-features { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 16px; font-size: 16px; color: #E8E1D9; }
#cv-login .cv-features li { display: flex; align-items: center; gap: 12px; }
#cv-login .cv-brand-foot { font-size: 13px; color: #CFC4B8; }
#cv-login .cv-panel { flex: 1 1 480px; min-width: 0; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 28px; padding: 48px 24px; box-sizing: border-box; }
#cv-login .cv-card { width: 100%; max-width: 420px; background: #FFFFFF; border: 1px solid #D5CCC2; border-radius: 16px; box-shadow: 0 12px 32px rgba(58, 38, 28, 0.10); padding: 40px; box-sizing: border-box; }
#cv-login .cv-card h2 { margin: 0 0 6px !important; padding: 0 !important; background: none !important; border: 0 !important; font-size: 28px; font-weight: 700; color: #3A261C !important; text-align: left; text-shadow: none; }
#cv-login .cv-sub { margin: 0 0 24px; font-size: 15px; color: #6B5D52; }
#cv-login form, #cv-login form fieldset { margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; box-shadow: none !important; width: auto !important; float: none !important; }
#cv-login form fieldset legend { display: none; }
#cv-login form fieldset ol { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 20px; }
#cv-login form fieldset ol > li { margin: 0 !important; padding: 0 !important; display: flex; flex-direction: column; gap: 8px; float: none !important; width: auto !important; }
#cv-login form fieldset ol > li label { float: none !important; width: auto !important; margin: 0 !important; padding: 0 !important; font-size: 14px; font-weight: 600; color: #3A261C !important; text-align: left; }
#cv-login form fieldset ol > li label abbr { display: none; }
#cv-login form input[type=text], #cv-login form input[type=password], #cv-login form input[type=email] { width: 100% !important; height: 48px !important; box-sizing: border-box; margin: 0 !important; border: 1px solid #CFC4B8 !important; border-radius: 10px !important; padding: 0 14px 0 42px !important; font-size: 15px !important; color: #3A302A; background: #FDFCFA no-repeat 14px center / 18px 18px !important; box-shadow: none !important; }
#cv-login form input[type=text]:focus, #cv-login form input[type=password]:focus { outline: 2px solid #3A261C; outline-offset: 1px; border-color: #3A261C !important; }
#cv-login #admin_user_username { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236B5D52' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3Cpath d='M4 21c0-4 4-6 8-6s8 2 8 6'/%3E%3C/svg%3E") !important; }
#cv-login #admin_user_password { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236B5D52' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='11' width='14' height='10' rx='2'/%3E%3Cpath d='M8 11V7a4 4 0 0 1 8 0v4'/%3E%3C/svg%3E") !important; }
#cv-login form fieldset.actions { margin-top: 26px !important; }
#cv-login form fieldset.actions ol > li { width: 100% !important; }
#cv-login form input[type=submit] { width: 100% !important; height: 50px !important; padding: 0 !important; border-radius: 10px !important; font-size: 16px !important; font-weight: 700 !important; cursor: pointer; }
#cv-login .cv-secure { margin-top: 20px; text-align: center; font-size: 13px; color: #6B5D52; }
#cv-login .cv-powered { font-size: 13px; color: #6B5D52; letter-spacing: 0.04em; }
#cv-login .cv-powered strong { color: #3A261C; letter-spacing: 0.16em; }
@media (max-width: 800px) {
  #cv-login .cv-brand { flex-basis: 100%; padding: 28px 24px; gap: 12px; border-right: 0; border-bottom: 3px solid #B08D57; }
  #cv-login .cv-brand h1 { margin: 0; font-size: 16px; font-weight: 500; color: #E8E1D9; }
  #cv-login .cv-features, #cv-login .cv-brand-foot { display: none; }
  #cv-login .cv-panel { padding: 24px 16px; justify-content: flex-start; }
  #cv-login .cv-card { padding: 24px; }
  #cv-login .cv-card h2 { font-size: 22px; }
}

/* Celvesta login fix: keep icons small, fit laptop screens */
#cv-login .cv-features svg { width: 20px !important; height: 20px !important; min-width: 20px; max-width: 20px; flex: none; }
#cv-login .cv-brand h1 { font-size: clamp(28px, 4.2vh, 40px); }
#cv-login .cv-brand { padding: clamp(28px, 6vh, 56px) 64px; }
#cv-login .cv-panel { min-height: 100vh; box-sizing: border-box; }
@media (max-width: 800px) { #cv-login .cv-panel { min-height: 0; } #cv-login .cv-brand { padding: 28px 24px; } #cv-login .cv-brand h1 { font-size: 16px; } }

/* Celvesta login: heading shadow, no extra scroll */
#cv-login .cv-card h2 { box-shadow: none !important; outline: 0 !important; text-shadow: none !important; }
body.logged_out #wrapper { min-height: 0 !important; height: auto !important; }
#cv-login .cv-panel { min-height: 0; }

/* Celvesta login: compact phone layout */
@media (max-width: 800px) {
  #cv-login { min-height: 0; }
  #cv-login .cv-brand { padding: 18px 20px; gap: 0; }
  #cv-login .cv-brand-mid { display: none; }
  #cv-login .cv-mark { width: 36px; height: 36px; font-size: 16px; }
  #cv-login .cv-word { font-size: 18px; }
  #cv-login .cv-logo { max-height: 44px; }
  #cv-login .cv-panel { padding: 20px 16px; gap: 16px; }
  #cv-login .cv-card { padding: 22px 20px; border-radius: 14px; }
  #cv-login .cv-sub { margin-bottom: 16px; }
  #cv-login form fieldset ol { gap: 14px; }
  #cv-login form fieldset.actions { margin-top: 18px !important; }
  #cv-login .cv-secure { margin-top: 14px; }
}

/* Celvesta login: customer logo on the card, company name on walnut */
#cv-login .cv-card-logo { display: block; max-height: 72px; max-width: 260px; width: auto; height: auto; object-fit: contain; margin: 0 0 22px; }
#cv-login .cv-company-word { font-size: 26px; font-weight: 800; letter-spacing: 0.02em; color: #F5F2EE; line-height: 1.2; }
@media (max-width: 800px) { #cv-login .cv-card-logo { max-height: 56px; margin-bottom: 16px; } #cv-login .cv-company-word { font-size: 18px; } }

/* Celvesta login: customer logo centred in a white band at the top of the card */
#cv-login .cv-card { overflow: hidden; }
#cv-login .cv-card-logo { display: block; box-sizing: border-box; width: calc(100% + 80px); max-width: none; height: 140px; max-height: none; margin: -40px -40px 26px; padding: 28px 40px 24px; object-fit: contain; object-position: center; background: #FFFFFF; border-bottom: 2px solid #B08D57; }
@media (max-width: 800px) {
  #cv-login .cv-card-logo { width: calc(100% + 40px); height: 112px; margin: -22px -20px 18px; padding: 20px 20px 18px; }
}

/* Celvesta login: compact card on short screens (laptops) */
@media (min-width: 801px) and (max-height: 850px) {
  #cv-login .cv-panel { padding: 16px 24px; gap: 14px; }
  #cv-login .cv-card { padding: 28px 40px 28px; }
  #cv-login .cv-card-logo { height: 112px; margin: -28px -40px 18px; padding: 20px 40px 18px; }
  #cv-login .cv-card h2 { font-size: 24px; }
  #cv-login .cv-sub { margin-bottom: 16px; }
  #cv-login form fieldset ol { gap: 14px; }
  #cv-login form fieldset.actions { margin-top: 18px !important; }
  #cv-login form input[type=text], #cv-login form input[type=password] { height: 44px !important; }
  #cv-login form input[type=submit] { height: 46px !important; }
  #cv-login .cv-secure { margin-top: 12px; }
}

/* Celvesta login: taller logo band on big screens */
@media (min-width: 801px) and (min-height: 851px) {
  #cv-login .cv-card-logo { height: 156px; padding: 28px 40px 24px; }
}

/* Celvesta login: remove leftover theme borders (3px scroll) */
body.logged_out #wrapper, body.logged_out #content_wrapper, body.logged_out #content_wrapper #active_admin_content { border: 0 !important; box-shadow: none !important; outline: 0 !important; }
