/* l.prondzinski@sims.pl CSS - optimized */

:root {
  /* color palette */
  --brand-blue: #008fdd;
  --brand-blue-dark: #0079c1;
  --brand-blue-darker: #005a96;
  --brand-error: #ec0000;
  --brand-success: #00a805;
  --text-main: #333333;
  --white: #ffffff;

  /* gradients */
  --grad-blue: linear-gradient(135deg, rgba(0, 121, 193, 0.9), rgba(0, 90, 150, 0.8));
  --grad-blue-hover: linear-gradient(135deg, rgba(0, 90, 150, 0.95), rgba(0, 65, 110, 0.9));
  --grad-red: linear-gradient(135deg, rgba(230, 0, 0, 0.85), rgba(180, 0, 0, 0.75));
  --grad-green: linear-gradient(135deg, rgba(30, 160, 0, 0.85), rgba(20, 120, 0, 0.75));
  
  /* global aesthetics */
  --shadow-soft: 0 4px 20px rgba(0, 0, 0, 0.08);
  --shadow-hover: 0 8px 25px rgba(0, 0, 0, 0.12);
  --glass-border: 1px solid rgba(255, 255, 255, 0.3);
  --radius-std: 12px;
  --radius-round: 50%;
  --transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

/* --- global & typography --- */

.FormElement__errorMsg {
  color: var(--brand-error);
  font-size: 1.125rem;
  margin: 0.3rem 0 0;
  font-weight: 700;
}

/* text colors & links */
.Header__tabsTab:hover,
.LoginDetail__signin:hover,
.LoginDetail__signup:hover,
.CustomizeContainer__aPlus:hover,
.LocalePopup__localeTarget:hover,
.commonStyle__zt3Link:hover,
.themeLink:hover,
.commonStyle__zt3LinkActive,
.commonStyle__zt3bdrLine,
.DepartmentList__forums,
.LoginDetail__tabLink,
.Header__tabsTab.Header__active,
.LoginDetail__signin.LoginDetail__active,
.LoginDetail__signup.LoginDetail__active,
.SearchResult__ticketFilter,
.MultiSelect__suggestionFocus,
.commonStyle__zt3Brand,
.FilterTabs__activeFilter,
.ErrorPage__errorTitle,
li#portal_tabHome,
li#portal_tabCases,
li#portal_tabSolutions,
.Menu__tabsItem.Menu__active,
.Menu__tabsItem:hover,
.Post__postSummary a {
  color: var(--brand-blue-dark);
  transition: color 0.2s ease;
}

/* --- navigation & tabs --- */

li#portal_tabHome,
li#portal_tabCases,
li#portal_tabSolutions {
  border-bottom: 3px solid transparent;
  transition: var(--transition);
  font-size: 1rem;
  font-weight: 700;
  padding-bottom: 0.5rem;
  cursor: pointer;
}

li#portal_tabHome:hover,
li#portal_tabCases:hover,
li#portal_tabSolutions:hover,
.Header__tabsTab.Header__active,
.Header__homeNavbarFixed .Header__navbar .Header__tabsTab.Header__active {
  border-bottom-color: var(--brand-blue-dark);
  color: var(--brand-blue-dark);
}

/* --- buttons & interactive elements --- */

/* shared button styles */
.Button__btnFont,
.AppContainer__backToTop,
.commonStyle__zt3BrandBg,
.DateTime__today,
.DateTime__blueBut,
[data-id="ticket_edit_cancel"],
[data-id="ticket_edit_save"] {
  background: var(--grad-blue);
  border: var(--glass-border);
  border-radius: var(--radius-std);
  color: var(--white);
  box-shadow: var(--shadow-soft);
  transition: var(--transition);
  backdrop-filter: blur(5px); /* glass effect */
}

/* specific tweaks */
.Button__btnFont { padding: 10px 20px; font-size: 1.05rem; }
.AppContainer__backToTop { border-radius: var(--radius-round); padding: 10px; }
.DateTime__today { border-radius: var(--radius-round); width: 2rem; height: 2rem; margin: 2px; }

/* hover states */
.Button__btnFont:hover,
.AppContainer__backToTop:hover,
.commonStyle__zt3BrandBg:hover,
.DateTime__today:hover,
.DateTime__blueBut:hover {
  background: var(--grad-blue-hover);
  box-shadow: var(--shadow-hover);
  transform: translateY(-1px);
}

/* specific buttons colors */
[data-id="ticket_edit_cancel"] { background: var(--grad-red); }
[data-id="ticket_edit_save"] { background: var(--grad-green); }

[data-id="ticket_edit_cancel"]:hover,
[data-id="ticket_edit_save"]:hover {
  filter: brightness(1.1);
  box-shadow: var(--shadow-hover);
}

/* --- icons & visuals --- */

.SearchContainer__downArrow {
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-top: 8px solid var(--brand-blue-dark);
  margin-top: 8px;
}

.Icon__white { color: var(--white); display: flex; justify-content: center; align-items: center; }
.Icon__brand { color: var(--brand-blue-dark); }
.Icon__grey { color: #0585c1; transition: var(--transition); }
.Icon__grey:hover { color: var(--brand-blue-darker); }

.Avatar__avatarImg {
  border-radius: var(--radius-round);
  width: 2rem;
  height: 2rem;
  object-fit: cover;
  border: 1px solid rgba(180, 180, 180, 0.4);
  transition: var(--transition);
}

.Avatar__avatarImg:hover {
  transform: scale(1.1) rotate(2deg);
  box-shadow: var(--shadow-soft);
}

/* text avatar style */
.AvatarText__avatarText {
  font-size: 0.9rem;
  border-radius: var(--radius-round);
  background: rgba(230, 245, 255, 0.4);
  border: 1px solid rgba(0, 121, 193, 0.3);
  width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--brand-blue-dark);
  transition: var(--transition);
}

.AvatarText__avatarText:hover {
  transform: scale(1.1);
  background: rgba(230, 245, 255, 0.7);
}

/* --- forms & inputs --- */

.Input__formInput,
.KB_Editor,
.DropDown__dropdown {
  border: 1px solid rgba(180, 180, 180, 0.4);
  background: rgba(255, 255, 255, 0.5);
  border-radius: 8px;
  padding: 10px 12px;
  transition: var(--transition);
  box-shadow: none;
}

.Input__formInput:hover,
.KB_Editor:hover,
.DropDown__dropdown:hover {
  border-color: var(--brand-blue);
  background: rgba(255, 255, 255, 0.8);
}

.Input__formInput:focus,
.KB_Editor:focus-within {
  outline: none;
  border-color: var(--brand-blue-dark);
  box-shadow: 0 0 0 3px rgba(0, 121, 193, 0.15);
  background: var(--white);
}

/* dropdown specifics */
.DropDown__selectname:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 1.25rem;
  border-top: 0.5rem solid var(--brand-blue-dark);
  border-right: 0.4rem solid transparent;
  border-left: 0.4rem solid transparent;
  transform: translateY(-50%);
}

.DropDown__listview,
.DropdownComponent__listview {
  border: 1px solid rgba(0, 121, 193, 0.3);
  background-color: rgba(255, 255, 255, 0.95);
  border-radius: 8px;
  backdrop-filter: blur(10px);
  box-shadow: var(--shadow-hover);
  overflow: hidden;
}

.DropdownComponent__option:hover {
  background-color: rgba(0, 121, 193, 0.1) !important;
  color: var(--text-main) !important;
  cursor: pointer;
}

/* --- chat / tickets ui --- */

/* end user msg */
.enduser_thread,
.enduser_comment {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.9), rgba(245, 245, 245, 0.8));
  border: 1px solid rgba(0, 0, 0, 0.05);
  border-radius: 16px;
  border-bottom-right-radius: 4px; /* imessage style */
  padding: 16px;
  margin-bottom: 12px;
  box-shadow: var(--shadow-soft);
  transition: var(--transition);
}

/* agent msg */
.agent_thread {
  background: linear-gradient(135deg, rgba(0, 121, 193, 0.1), rgba(0, 90, 150, 0.05));
  border: 1px solid rgba(0, 121, 193, 0.1);
  border-radius: 16px;
  border-bottom-left-radius: 4px;
  padding: 16px;
  margin-bottom: 12px;
  box-shadow: var(--shadow-soft);
  transition: var(--transition);
}

.enduser_thread:hover,
.agent_thread:hover {
  box-shadow: var(--shadow-hover);
  transform: translateY(-2px);
}

/* chat options indicator */
.Post__options::after {
  content: "";
  display: inline-block;
  border-top: 6px solid var(--brand-blue-darker);
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  transition: var(--transition);
}

.Post__options:hover::after { transform: scale(1.2); }
.Post__options.active::after { transform: rotate(180deg) scale(1.2); }

/* tooltips */
.enduser_thread:hover::before,
.agent_thread:hover::before,
.Post__options:hover::before {
  content: "Rozwiń / Opcje"; /* simplified for demo, keep original if needed */
  font-size: 11px;
  color: var(--white);
  position: absolute;
  top: -25px;
  left: 50%;
  transform: translateX(-50%);
  background: rgba(0, 0, 0, 0.75);
  padding: 4px 8px;
  border-radius: 4px;
  opacity: 1;
  animation: fadeIn 0.3s;
  pointer-events: none;
  white-space: nowrap;
}
@keyframes fadeIn { from { opacity: 0; transform: translate(-50%, 5px); } to { opacity: 1; transform: translate(-50%, 0); } }

/* --- text replacements & legacy overrides --- */

/* hiding comment button */
.ConversationForm__list+.ConversationForm__list { padding-left: 1.5625rem; display: none; }

/* status colors */
[data-id="ticket_status"] { color: var(--brand-success); font-weight: 700; }
[data-id="ticket_Id"], .DateTime__sunday { color: var(--brand-error); font-weight: 700; }

/* button text hacks - preserved */
button[data-id="The_Software_Support_Department_&_Service_Department_addTicket"] { font-size: 0; display: flex; }
button[data-id="The_Software_Support_Department_&_Service_Department_addTicket"]::after {
  content: "Submit Ticket";
  font-size: 1.05rem;
}

button.Button__btnFont.Button__footerBtn { font-size: 0; line-height: 0; white-space: nowrap; }
button.Button__btnFont.Button__footerBtn::after {
  content: "Prześlij zgłoszenie / Submit ticket";
  font-size: 1rem;
  line-height: initial;
}

/* misc */
.NoContent__title { color: var(--brand-blue-dark); font-weight: 600; margin-top: 1rem; }
.ProfileTabs__activeTab { color: var(--brand-blue-dark); }
.ConversationForm__editorBar { padding: 0 0 .5rem; border-bottom: none; align-items: center; justify-content: space-between; }


/* container width & look */
.DateTime__dateContainer {
  background-color: var(--white);
  border-radius: var(--radius-std);
  box-shadow: var(--shadow-hover);
  padding: 0.8rem 1rem;
  min-width: 350px; /* restored width */
  border: 1px solid rgba(0, 0, 0, 0.08);
  display: inline-block; /* ensures width is respected */
}

/* today circle */
.DateTime__today {
  background: var(--grad-blue);
  border-radius: 50%;
  color: var(--white);
  width: 2rem;
  height: 2rem;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 2px auto;
  box-shadow: var(--shadow-soft);
  transition: var(--transition);
}

.DateTime__today:hover {
  background: var(--grad-blue-hover);
  transform: scale(1.1);
}

/* standard days hover */
.DateTime__commonStr {
  padding: 4px;
  border-radius: 4px;
  transition: background 0.2s;
}

.DateTime__commonStr:hover {
  background-color: rgba(0, 143, 221, 0.1); /* light brand blue */
  color: var(--brand-blue-dark);
  font-weight: bold;
}

/* dropdown headers in calendar */
.DropdownComponent__bccolor {
  background-color: var(--brand-blue);
  color: var(--white);
  border-radius: 4px;
  padding: 2px 5px;
}

.DropdownComponent__bccolor:hover {
  background-color: var(--brand-blue-dark);
}

/* dropdown list container */
.DropdownComponent__listview {
  min-width: 120px;
  background-color: rgba(255, 255, 255, 0.98);
  border: 1px solid rgba(0, 121, 193, 0.4);
  border-radius: 8px;
  box-shadow: var(--shadow-hover);
  z-index: 100;
  margin-top: 2px;
}

/* specific list option hover requested originally */
.DropdownComponent__option:hover {
  background-color: #256d99 !important; /* specific dark blue */
  color: #ffffff !important; /* changed to white for readability on dark bg */
  cursor: pointer;
}

/* inputs inside calendar */
.DateWidget__dateFocus,
.DateWidget__date:hover {
  border-bottom: 2px solid var(--brand-blue);
  color: var(--brand-blue-dark);
}
.DropdownComponent__flexline {
  color:#666;
  min-width: 130px;
}
