/*

Volos Janusz Skotarczak

*/
/* Global */
/* forms */
/* Universal */
/* login */
/* main */
/*welcome*/
/* nav */
/* popup */
/* application */
/* scroll_div_list */
/* position table */
/* additionals table */
/* messages */
/* icons */
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin: 0px;
  padding: 0px;
  border: 0px;
  font-family: 'Open Sans', sans-serif;
}

pre {
  font-family: monospace;
  font-size: 12pt;
}

.pointer:hover {
  cursor: pointer;
  cursor: pointer;
}

p {
  margin-top: 10px;
  margin-bottom: 10px;
}

h1 {
  margin-top: 20px;
  margin-bottom: 10px;
}

h2 {
  margin-top: 20px;
  margin-bottom: 10px;
}

h3 {
  margin-top: 20px;
  margin-bottom: 10px;
}

h4 {
  margin-top: 20px;
  margin-bottom: 10px;
}

h5 {
  margin-top: 20px;
  margin-bottom: 10px;
}

h6 {
  margin-top: 20px;
  margin-bottom: 10px;
}

a {
  text-decoration: none;
  color: #1f3a5e;
}

a:hover {
  cursor: pointer;
}

small {
  font-size: 0.7em;
}

hr {
  margin-top: 10px;
  margin-bottom: 10px;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}

li {
  margin-left: 15px;
}

body {
  min-width: 1024px;
  background-color: #eee;
}

.hidden {
  display: none;
}

input {
  display: block;
  width: 100%;
  padding: 5px;
  background-color: #fff;
  border-style: solid;
  border-width: 1px;
  border-color: #999;
  height: 35px;
}

input:focus {
  outline: 0px;
}

input:-moz-read-only {
  background-color: #eee;
}

input:read-only {
  background-color: #eee;
}

textarea {
  display: block;
  width: 100%;
  padding: 5px;
  background-color: #fff;
  border-style: solid;
  border-width: 1px;
  border-color: #999;
  height: 35px;
  min-height: 100px;
  min-width: 100%;
  max-width: 100%;
  font-size: 0.8em;
  text-align: left;
}

button {
  display: block;
  width: 100%;
  padding: 5px;
  background-color: #fff;
  border-style: solid;
  border-width: 1px;
  border-color: #999;
  height: 35px;
  margin-top: 5px;
  margin-bottom: 5px;
  height: 35px;
  background: #1f3a5e;
  background: linear-gradient(10deg, #1f3a5e 0%, #42698c 100%);
  color: #fff;
}

button:focus {
  outline: 0px;
  background: #365f95;
  background: linear-gradient(190deg, #1f3a5e 0%, #5b8bb7 100%);
}

button:disabled {
  background: #8c8c8c;
  background: linear-gradient(10deg, #8c8c8c 0%, #717171 100%);
}

button:disabled:hover {
  background: #8c8c8c;
  background: linear-gradient(10deg, #8c8c8c 0%, #717171 100%);
}

button:hover {
  cursor: pointer;
  background: #365f95;
  background: linear-gradient(10deg, #1f3a5e 0%, #5b8bb7 100%);
}

select {
  display: block;
  width: 100%;
  padding: 5px;
  background-color: #fff;
  border-style: solid;
  border-width: 1px;
  border-color: #999;
  height: 35px;
}

input[type=checkbox] {
  display: inline-block;
  width: auto;
  height: auto;
  margin: 5px;
}

input[type=submit] {
  margin-top: 5px;
  margin-bottom: 5px;
  height: 35px;
  background: #1f3a5e;
  background: linear-gradient(10deg, #1f3a5e 0%, #42698c 100%);
  color: #fff;
}

input[type=submit]:disabled {
  background: #8c8c8c;
  background: linear-gradient(10deg, #8c8c8c 0%, #717171 100%);
}

input[type=submit]:disabled:hover {
  background: #8c8c8c;
  background: linear-gradient(10deg, #8c8c8c 0%, #717171 100%);
}

input[type=submit]:hover {
  cursor: pointer;
  background: #365f95;
  background: linear-gradient(10deg, #1f3a5e 0%, #5b8bb7 100%);
}

input[type=submit]:focus {
  background: #365f95;
  background: linear-gradient(190deg, #1f3a5e 0%, #5b8bb7 100%);
}

input[type=submit]:-moz-read-only {
  background-color: #42698c;
}

input[type=submit]:read-only {
  background-color: #42698c;
}

input[type=submit]:-moz-read-only:hover {
  background-color: #6e93b5;
}

input[type=submit]:read-only:hover {
  background-color: #6e93b5;
}

label {
  font-size: 0.8em;
}

.red_button {
  background: #7b1111;
  background: linear-gradient(10deg, #7b1111 0%, #db4545 100%);
  color: #fff;
}

.red_button:hover {
  background: #7b1111;
  background: linear-gradient(10deg, #7b1111 0%, #f57b7b 100%);
  color: #fff;
}

.red_button:focus {
  background: #7b1111;
  background: linear-gradient(190deg, #7b1111 0%, #db4545 100%);
  color: #fff;
}

.green_button {
  background: #346c2a;
  background: linear-gradient(10deg, #346c2a 0%, #45ba16 100%);
  color: #fff;
}

.green_button:hover {
  background: #346c2a;
  background: linear-gradient(10deg, #346c2a 0%, #80ff4d 100%);
  color: #fff;
}

.green_button:focus {
  background: #346c2a;
  background: linear-gradient(190deg, #346c2a 0%, #45ba16 100%);
  color: #fff;
}

.red {
  color: #ff4040 !important;
}

.orange {
  color: orange !important;
}

.yellow {
  color: yellow !important;
}

.green {
  color: #29c729 !important;
}

.blue {
  color: #29a9c7 !important;
}

.white {
  color: #fff !important;
}

.bigger {
  font-size: 1.5em;
}

.smaller {
  font-size: 0.8em;
}

.bgcolor {
  background-color: #42698c;
}

.bgcolor * {
  color: #fff;
}

.darkcolor {
  background-color: #000;
}

.darkcolor * {
  color: #fff;
}

.center {
  text-align: center;
}

.right {
  text-align: right;
}

.content {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 200px auto;
      grid-template-columns: 200px auto;
}

.cols_2 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 50%;
      grid-template-columns: auto 50%;
  -webkit-column-gap: 10px;
          column-gap: 10px;
}

.cols_3 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 33.33% 33.33%;
      grid-template-columns: auto 33.33% 33.33%;
  -webkit-column-gap: 10px;
          column-gap: 10px;
}

.cols_2-4 {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: auto 25%;
      grid-template-columns: auto 25%;
  -webkit-column-gap: 10px;
          column-gap: 10px;
}

.scroll {
  overflow-y: scroll;
  height: 100vh;
}

.ghostlist li {
  list-style-type: none;
  margin-left: 0px;
}

.loginbox_image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  width: 100%;
  position: fixed;
  z-index: 1;
  left: 0;
  top: 0;
  background-color: #42698c;
  background-image: url("public/images/background.jpg");
  background-position: center;
  background-size: cover;
}

.loginbox_background {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  width: 100%;
  position: fixed;
  z-index: 1;
  left: 0;
  top: 0;
  background-color: #42698c;
  background-color: rgba(66, 105, 140, 0.5);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.loginbox_background .loginbox {
  display: block;
  width: 300px;
  background-color: white;
  background-color: white;
  border-radius: 25px;
  -webkit-box-shadow: 0px 0px 13px 5px rgba(0, 0, 0, 0.5);
  box-shadow: 0px 0px 13px 5px rgba(0, 0, 0, 0.5);
}

.loginbox_background .loginbox .content {
  text-align: center;
  display: block;
  padding: 10px;
  margin: 10px;
  max-height: 80vh;
}

.logotype {
  color: #fff;
  text-shadow: 0px 3px 5px rgba(0, 0, 0, 0.5);
}

.welcome_image {
  height: 100vh;
  background-color: #42698c;
  background-image: url("public/images/background.jpg");
  background-position: center;
  background-size: cover;
}

.welcome_image .box {
  text-align: center;
  display: block;
  padding: 20px;
  background-color: white;
  background-color: white;
  border-radius: 25px;
  -webkit-box-shadow: 0px 0px 13px 5px rgba(0, 0, 0, 0.5);
  box-shadow: 0px 0px 13px 5px rgba(0, 0, 0, 0.5);
}

.welcome_background {
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  background-color: #42698c;
  background-color: rgba(66, 105, 140, 0.5);
  background-position: center;
  background-size: cover;
}

.welcome_scroll {
  padding: 50px;
  position: relative;
  max-height: 100vh;
  overflow-y: scroll;
  overflow-x: hidden;
  scrollbar-color: #eee white;
  scrollbar-width: none;
}

.blog {
  margin-top: 50px;
}

.blog .blog_post {
  margin-top: 10px;
  margin-bottom: 10px;
  padding: 20px;
  background: #fff;
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0.1)), to(rgba(255, 255, 255, 0.1)));
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0.1) 100%);
  border-radius: 25px;
}

.blog .blog_post p {
  margin-bottom: 10px;
}

.nav {
  background: #1f3a5e;
  background: linear-gradient(45deg, #1f3a5e 0%, #42698c 100%);
}

.nav button {
  background: #1f3a5e;
  background: linear-gradient(10deg, #1f3a5e 0%, #42698c 100%);
  color: #fff;
  margin: 0px;
  border: none;
  height: 40px;
}

.nav button:hover {
  background: #365f95;
  background: linear-gradient(10deg, #1f3a5e 0%, #5b8bb7 100%);
  color: #fff;
  margin: 0px;
}

.nav .title {
  text-align: center;
  color: #fff;
  padding-top: 20px;
  padding-bottom: 20px;
}

.popup {
  height: 100%;
  width: 100%;
  position: fixed;
  z-index: 1;
  left: 0;
  top: 0;
  background-color: #42698c;
  background-color: rgba(66, 105, 140, 0.9);
  overflow-x: hidden;
  display: none;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.popup_frame {
  width: 90%;
  min-height: 90vh;
  min-width: 1024px;
  background-color: #fff;
  border-radius: 25px;
  -webkit-box-shadow: 0px 0px 13px 5px rgba(0, 0, 0, 0.5);
  box-shadow: 0px 0px 13px 5px rgba(0, 0, 0, 0.5);
}

.popup_frame .popup_bar {
  text-align: right;
  padding: 3px;
  padding-right: 10px;
  background-color: #000;
  color: #ff7878;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}

.popup_frame .popup_bar:hover {
  color: red;
  cursor: pointer;
}

.popup_frame .popup_closebtn {
  font-size: 2em;
  color: #ff7878;
}

.popup_frame .popup_message {
  padding-left: 10px;
  padding-right: 10px;
  margin-left: 10px;
  margin-right: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.popup_frame .popup_message div {
  position: absolute;
  width: 300px;
}

.popup_frame .popup_content {
  overflow-y: scroll;
  padding: 10px;
  margin: 10px;
  height: 80vh;
}

.application {
  background-color: #fff;
  padding: 20px;
  margin: 10px;
  border-radius: 20px;
  -webkit-box-shadow: 0px 0px 13px 5px rgba(0, 0, 0, 0.33);
  box-shadow: 0px 0px 13px 5px rgba(0, 0, 0, 0.33);
}

.application .fancyframe {
  background-color: #eee;
  padding: 20px;
  width: 100%;
}

.application .inner_menu {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 300px auto;
      grid-template-columns: 300px auto;
  -webkit-column-gap: 10px;
          column-gap: 10px;
}

.div_list {
  background-color: #fff;
  border-style: solid;
  border-width: 1px;
  border-color: #999;
}

.div_list .element {
  padding: 10px;
  border-style: solid;
  border-width: 1px;
  border-color: #eee;
}

.div_list .element:hover {
  background-color: #eee;
}

.div_list h1 {
  margin-top: 0px;
}

.div_list h2 {
  margin-top: 0px;
}

.div_list h3 {
  margin-top: 0px;
}

.div_list h4 {
  margin-top: 0px;
}

.div_list h5 {
  margin-top: 0px;
}

.div_list h6 {
  margin-top: 0px;
}

.div_list p {
  margin-top: 5px;
  margin-bottom: 5px;
}

.div_list small {
  margin-top: 5px;
  margin-bottom: 5px;
}

.div_list .good {
  background: #c8f2d1;
  background: -webkit-gradient(linear, left top, right top, from(#c8f2d1), to(rgba(200, 242, 209, 0)));
  background: linear-gradient(90deg, #c8f2d1 0%, rgba(200, 242, 209, 0) 100%);
  border-color: #fff;
}

.div_list .good:hover {
  background: #c8f2d1;
}

.div_list .bad {
  background: #ffa8a8;
  background: -webkit-gradient(linear, left top, right top, from(#ffd8d3), to(rgba(255, 216, 211, 0)));
  background: linear-gradient(90deg, #ffd8d3 0%, rgba(255, 216, 211, 0) 100%);
  border-color: #fff;
}

.div_list .bad:hover {
  background: #ffd8d3;
}

.scroll_div_list {
  background-color: #fff;
  border-style: solid;
  border-width: 1px;
  border-color: #999;
  height: 300px;
  overflow-y: scroll;
}

.scroll_div_list .element {
  padding: 10px;
  border-style: solid;
  border-width: 1px;
  border-color: #eee;
}

.scroll_div_list .element:hover {
  background-color: #eee;
}

.scroll_div_list .good {
  background: #c8f2d1;
  background: -webkit-gradient(linear, left top, right top, from(#c8f2d1), to(rgba(200, 242, 209, 0)));
  background: linear-gradient(90deg, #c8f2d1 0%, rgba(200, 242, 209, 0) 100%);
  border-color: #fff;
}

.scroll_div_list .good:hover {
  background: #c8f2d1;
}

.scroll_div_list .bad {
  background: #ffa8a8;
  background: -webkit-gradient(linear, left top, right top, from(#ffd8d3), to(rgba(255, 216, 211, 0)));
  background: linear-gradient(90deg, #ffd8d3 0%, rgba(255, 216, 211, 0) 100%);
  border-color: #fff;
}

.scroll_div_list .bad:hover {
  background: #ffd8d3;
}

.position_table {
  background-color: #eee;
}

.position_table .position_row {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 4% auto 5% 12% 12% 12% 15%;
      grid-template-columns: 4% auto 5% 12% 12% 12% 15%;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: #ddd;
}

.position_table .position_row .position_cell {
  border-left-style: solid;
  border-left-width: 1px;
  border-left-color: #999;
  min-height: 50px;
}

.position_table .position_row .position_cell p {
  margin: 5px 5px 0px 5px;
}

.position_table .position_row .position_cell small {
  color: #777;
  margin: 0px 5px 0px 5px;
}

.position_table .highlight:hover {
  background-color: #fff;
}

.position_table input {
  border: none;
  margin: 0px;
}

.position_table button {
  display: inline-block;
  width: 50%;
  border: none;
  margin: 0px;
  padding-left: 10px;
  padding-right: 10px;
}

.position_table .position_table_heading {
  background-color: #333;
  color: #eee;
  font-size: 12px;
}

.position_table .position_table_heading div {
  padding: 5px;
}

.additionals_table {
  background-color: #eee;
}

.additionals_table .additional_row {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 3% auto 10% 10% 10% 10%;
      grid-template-columns: 3% auto 10% 10% 10% 10%;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: #ddd;
}

.additionals_table input {
  border: none;
  margin: 0px;
}

.additionals_table .table_div {
  font-size: 0.8em;
  padding: 5px;
  padding-top: 10px;
}

.additionals_table button {
  display: inline-block;
  width: 100%;
  border: none;
  margin: 0px;
  padding-left: 10px;
  padding-right: 10px;
}

.additionals_table .additionals_table_heading {
  background-color: #333;
  color: #eee;
}

.additionals_table .additionals_table_heading div {
  padding: 5px;
}

.additionals_groups_table {
  background-color: #2b333a;
}
.additionals_groups_table .additionals_groups_row {
  display: grid;
  grid-template-columns: 3% auto 10% 10% 10% 10%;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: #1d2124;
}
.additionals_groups_table input {
  border: none;
  margin: 0px;
}
.additionals_groups_table .table_div {
  font-size: 0.8em;
  padding: 5px;
  padding-top: 10px;
}
.additionals_groups_table button {
  display: inline-block;
  width: 100%;
  border: none;
  margin: 0px;
  padding-left: 10px;
  padding-right: 10px;
}
.additionals_groups_table .additionals_groups_table_heading {
  background-color: #333;
  color: #2b333a;
}
.additionals_groups_table .additionals_groups_table_heading div {
  padding: 5px;
}

.infos {
  position: fixed;
  width: 100%;
  z-index: 1;
  left: 0;
  top: 0;
  overflow-x: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.message-info {
  margin-top: 10px;
  padding: 10px;
  background-color: #c8f0f2;
  border-color: black;
  border-style: solid;
  border-width: 1px;
  border-radius: 5px;
}

.message-alert {
  margin-top: 10px;
  padding: 10px;
  background-color: #fae782;
  border-color: black;
  border-style: solid;
  border-width: 1px;
  border-radius: 5px;
}

.message-warning {
  margin-top: 10px;
  padding: 10px;
  background: #ffd8d3;
  border-color: black;
  border-style: solid;
  border-width: 1px;
  border-radius: 5px;
}

.hint {
  position: relative;
  display: inline-block;
}

.hint .hint_text-top {
  visibility: hidden;
  width: 120px;
  background-color: black;
  color: #fff;
  text-align: center;
  padding: 5px;
  border-radius: 6px;
  position: absolute;
  z-index: 999;
  width: 200px;
  bottom: 20px;
  left: calc(50% + 8px);
  margin-left: -100px;
}

.hint .hint_text-bottom {
  visibility: hidden;
  width: 120px;
  background-color: black;
  color: #fff;
  text-align: center;
  padding: 5px;
  border-radius: 6px;
  position: absolute;
  z-index: 999;
  width: 200px;
  top: calc(100% + 20px);
  left: calc(50% + 8px);
  margin-left: -100px;
}

.hint:hover .hint_text-top {
  visibility: visible;
}

.hint:hover .hint_text-bottom {
  visibility: visible;
}

.icon_bar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.icon_bar button {
  display: block;
  width: auto;
  margin: 5px;
}

.icon {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-item-align: center;
      align-self: center;
}

.icon svg {
  height: 1.5em;
  width: 1.5em;
  fill: currentColor;
}

.icon img {
  height: 1.5em;
  width: 1.5em;
  fill: currentColor;
  top: .125em;
  position: relative;
}

.icon.baseline svg {
  top: 0;
  position: relative;
}

.superadmin {
  background-color: #42698c;
  color: #fff;
  padding: 20px;
}

.superadmin .scroll {
  overflow-y: scroll;
  height: calc(100vh - 150px);
}

.superadmin input {
  background-color: #42698c;
  color: #fff;
  font-family: monospace;
  font-size: 12pt;
}

.superadmin button {
  margin: 0px;
  background: #fff;
  color: #42698c;
}
/*# sourceMappingURL=style.css.map */

/* === Popup bar flex === */
.popup_frame .popup_bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-align: left;
}
.popup_bar_left_actions {
  display: flex;
  align-items: center;
  gap: 4px;
  padding-left: 4px;
}
.popup_bar_icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  color: #aaa;
  border-radius: 6px;
  transition: background .15s;
  text-decoration: none;
}
.popup_bar_icon:hover { background: rgba(255,255,255,.15); color: #fff; }
.popup_bar_icon .icon { width: 18px; height: 18px; fill: currentColor; }
.popup_bar_icon .icon svg { width: 100%; height: 100%; }

/* ================================================
   Modern additionals table
   ================================================ */
.additionals_table.modern {
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid rgba(128,128,128,.25);
  background: transparent;
}

/* 8-column grid — !important beats old 6-col base rule */
.additionals_table.modern .additional_row {
  display: grid !important;
  grid-template-columns: 40px 20px 30px minmax(0,1fr) 110px 110px 48px 38px !important;
  align-items: center;
  min-height: 42px;
  border-bottom: 1px solid rgba(128,128,128,.15);
  transition: background .1s;
}
.additionals_table.modern .additional_row:last-child { border-bottom: none; }

.additionals_table.modern .additional_row:hover:not(.additionals_table_heading) {
  background: rgba(128,128,128,.07);
}

.additionals_table.modern .additionals_table_heading {
  background: rgba(0,0,0,.35);
  min-height: 34px;
  font-size: .75em;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.additionals_table.modern .additionals_table_heading div {
  padding: 0 6px;
}

/* LP counter — auto-updates on drag-and-drop reorder */
.additionals_table.modern {
  counter-reset: additional-lp;
}
.additionals_table.modern .additional_row:not(.additionals_table_heading) {
  counter-increment: additional-lp;
}
.additionals_table.modern .row-lp {
  justify-content: center;
  font-size: .78em;
  font-weight: 600;
  color: rgba(128,128,128,.65);
}
.additionals_table.modern .row-lp::before {
  content: counter(additional-lp);
}

/* drag handle */
.drag-handle {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  cursor: grab;
  color: rgba(128,128,128,.6);
  font-size: 1.6em;
  user-select: none;
  padding: 0 2px;
}
.drag-handle:active { cursor: grabbing; color: rgba(128,128,128,.9); }

/* dirty indicator */
.dirty-dot {
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 2px solid rgba(128,128,128,.4);
  margin: auto;
  transition: all .2s;
  flex-shrink: 0;
}
.dirty-dot.is-dirty {
  background: #f0a411;
  border-color: #f0a411;
  box-shadow: 0 0 6px rgba(240,164,17,.6);
}

/* editable inputs — visible so user knows they're editable */
.additionals_table.modern input.add-input {
  display: block;
  width: 100%;
  padding: 5px 7px;
  font-size: .85em;
  background: rgba(128,128,128,.12);
  border: 1px solid rgba(128,128,128,.3) !important;
  border-radius: 5px;
  color: inherit;
  margin: 0;
  transition: border-color .15s, background .15s;
}
.additionals_table.modern input.add-input:focus {
  background: rgba(74,158,218,.12);
  border-color: #4a9eda !important;
  outline: none;
}

.additionals_table.modern .additional_row.dragging { opacity: .3; }
.additionals_table.modern .additional_row.drag-over {
  border-top: 2px solid #f0a411;
  background: rgba(240,164,17,.05);
}

/* delete cell */
.add-delete-cell {
  display: flex;
  align-items: center;
  justify-content: center;
}
.add-delete-btn {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 28px !important;
  height: 28px !important;
  padding: 0 !important;
  border-radius: 6px !important;
  background: rgba(220,53,69,.15) !important;
  border: 1px solid rgba(220,53,69,.3) !important;
  color: #dc3545 !important;
  cursor: pointer;
  transition: background .15s;
}
.add-delete-btn:hover { background: rgba(220,53,69,.35) !important; }
.add-delete-btn .icon { width: 14px; height: 14px; fill: currentColor; }
.add-delete-btn .icon svg { width: 100%; height: 100%; }

/* CSS toggle switch (replaces ON/OFF button) */
.add-toggle-btn {
  position: relative;
  display: inline-block !important;
  width: 40px !important;
  height: 22px !important;
  min-width: 0 !important;
  padding: 0 !important;
  border-radius: 11px !important;
  border: none !important;
  cursor: pointer;
  transition: background .2s;
  vertical-align: middle;
  flex-shrink: 0;
  font-size: 0;
  overflow: visible;
}
.add-toggle-btn::after {
  content: '';
  position: absolute;
  width: 16px;
  height: 16px;
  background: #fff;
  border-radius: 50%;
  top: 3px;
  left: 3px;
  transition: left .2s;
  box-shadow: 0 1px 4px rgba(0,0,0,.35);
  pointer-events: none;
}
.add-toggle-btn.toggle-on { background: #28a745 !important; }
.add-toggle-btn.toggle-on::after { left: 21px; }
.add-toggle-btn.toggle-off { background: #6c757d !important; }
.add-toggle-btn:focus { outline: none; box-shadow: 0 0 0 2px rgba(74,158,218,.5); }

/* save button */
.add-save-btn {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  width: auto !important;
  padding: 7px 18px !important;
  border-radius: 6px !important;
  background: #2c6fad !important;
  border: none !important;
  color: #fff !important;
  font-weight: 600;
  cursor: pointer;
  transition: background .15s;
}
.add-save-btn:hover { background: #235a8e !important; }
.add-save-btn .icon { width: 15px; height: 15px; fill: #fff; }
.add-save-btn .icon svg { width: 100%; height: 100%; }

/* footer row */
.additionals-footer {
  display: flex;
  justify-content: flex-end;
  padding: 8px 0;
}

/* group info bar */
.group-info-bar {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 0;
  flex-wrap: wrap;
}
.group-id-badge {
  background: rgba(0,0,0,.4);
  color: #fff;
  padding: 3px 9px;
  border-radius: 5px;
  font-size: .8em;
  font-weight: 700;
  letter-spacing: .03em;
}
.group-name { font-weight: 600; }

/* group management section — bottom of popup */
.group-management-section {
  border-top: 1px solid rgba(128,128,128,.2);
  padding: 16px 0 4px;
  margin-top: 8px;
}
.group-management-section h2 { margin-top: 0; }
.add-search-input {
  display: block;
  width: 100%;
  padding: 6px 10px;
  border: 1px solid rgba(128,128,128,.3) !important;
  border-radius: 6px;
  font-size: .88em;
  background: rgba(128,128,128,.1);
  color: inherit;
  margin-bottom: 2px;
}
.add-search-input:focus { outline: none; border-color: #4a9eda !important; }

/* row padding + vertical centering inside each cell */
.additionals_table.modern .additional_row > div {
  display: flex;
  align-items: center;
  padding: 4px 6px;
}
.additionals_table.modern .additionals_table_heading > div {
  padding: 6px 6px;
}

/* action buttons (Dodaj / Utwórz grupę etc.) — flat blue, compact */
.add-form-btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: auto !important;
  padding: 8px 20px !important;
  border-radius: 6px !important;
  background: #2c6fad !important;
  background-image: none !important;
  border: none !important;
  color: #fff !important;
  font-size: .88em;
  font-weight: 600;
  cursor: pointer;
  transition: filter .15s;
}
.add-form-btn:hover { filter: brightness(1.12); }
