@tailwind base;
@tailwind components;
@tailwind utilities;

/*

@layer components {
  .btn-primary {
    @apply py-2 px-4 bg-blue-200;
  }
}

*/

.pagy {
  @apply flex space-x-1 font-semibold text-sm;
}

.pagy a {
  @apply block rounded-lg px-3 py-1 transition-all;
}

.pagy a:hover {
  @apply bg-gray-100;
}

.pagy a[href]:not(.gap):not(.current) {
  @apply block rounded-lg px-3 py-1 transition-all;
}

.pagy a:not([href]) {
  @apply cursor-default;
}

.pagy a:hover {
  @apply border border-gray-200 shadow;
}

.pagy a.current {
  @apply border border-gray-200 shadow;
}

.pagy label {
  @apply inline-block whitespace-nowrap bg-gray-200 rounded-lg px-3 py-0.5;
}

.pagy label input {
  @apply bg-gray-100 border-none rounded-md;
}
/*
 * This is a manifest file that'll be compiled into application.css, which will include all the files
 * listed below.
 *
 * Any CSS and SCSS file within this directory, lib/assets/stylesheets, or any plugin's
 * vendor/assets/stylesheets directory can be referenced here using a relative path.
 *
 * You're free to add application-wide styles to this file and they'll appear at the bottom of the
 * compiled file so the styles you add here take precedence over styles defined in any other CSS/SCSS
 * files in this directory. Styles in this file should be added after the last require_* statement.
 * It is generally better to create a new file per style scope.
 *


 */

.td-lucide-icon {
  display: block;
  width: 20px;
  margin: auto;
}

:root {
  --red: #cf343e;
  --light-red: #cf683e;
  --yellow: rgb(255, 205, 0);
  --blue: rgb(0, 115, 119);
  --highlight-clr: rgb(0, 115, 119);
  --grey-clr: #c3c3c3;
  --lightblue-clr: #729dcd;
  --darkblue-clr: #1d2c5f;
  --warning-color: rgb(255, 230, 20);
}

.m-none {
  margin: 0;
}
.no-wrap {
  white-space: nowrap;
}
.sr-lone {
  visibility: hidden;
  display: none;
}
.text-center {
  text-align: center;
}
.font-blue {
  color: var(--darkblue-clr);
}
.font-lightblue {
  color: var(--lightblue-clr) !important;
}
.inactive {
  color: red !important;
}
.f-right {
  float: right;
}

.btn-link {
  color: var(--darkblue-clr);
}
.btn-link:hover {
  background-color: var(--highlight-clr);
  color: #fff !important;
  font-weight: bold;
}

.btn-link.inactive {
  border: 1px solid red;
}

.hr::after {
  content: "";
  border-bottom: 1px solid var(--grey-clr);
  display: block;
}

.dialogs {
  display: none;
}

.mr-1 {
  margin-right: 1em;
}

.dialog-btn {
  padding: 0.4em;
}

.dialog-help {
  font-size: 0.8rem;
  /* display: none; */
}
.dialog-help ul {
  margin: 0;
  padding: 0;
  padding-left: 1rem;
  color: red;
}

#customer_products_customer_code {
  margin-bottom: 0;
  color: #444;
}

#customer_products_customer_id,
#customer_products_customer_name {
  margin-bottom: 0;
}

html {
  font-family: brandon-grotesque, sans-serif;
  font-style: normal;
  font-weight: 400;
}

body.devise-login {
  background-color: #f2f2f2;
}

#main_site {
  display: grid;
  grid-template-rows: auto 1fr auto;
  height: 100vh;
}

#main_section {
  /* max-width: 1080px;
   min-width:620px; */
  padding-left: 1em;
  padding-right: 1em;
}

section.tbl-section {
  margin-left: 200px;
  background-color: white;
}

#flash-messages-section {
  z-index: 9999;
  width: 95%;
}

div.alert {
  padding: 10px;
  background-color: var(--red); /* Red */
  color: white;
  margin-bottom: 15px;
  margin-left: 15px;
  margin-top: 5px;
  opacity: 1;
  transition: opacity 0.6s; /* 600ms to fade out */
  border-radius: 10px;
}

div.notice {
  padding: 10px;
  background-color: #6c757d;
  color: white;
  margin-bottom: 15px;
  margin-left: 15px;
  margin-top: 5px;
  opacity: 1;
  transition: opacity 0.6s; /* 600ms to fade out */
  border-radius: 10px;
}

div.close_alert_btn {
  float: right;
  font-size: 2rem;
  line-height: 1.5rem;
  cursor: pointer;
}

div.warning {
  border: 1px solid var(--warning-color);
  border-radius: 8px;
  background-color: color-mix(in srgb, var(--warning-color) 25%, white);
  color: black;
  padding: 16px;
  margin: 8px;
  max-width: 90%;
  position: relative;
  font-size: 1.1rem;
}
div.warning:before {
  content: "";
  border-left: 8px solid var(--warning-color);
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
}

/* breadcrumb stuff from bootstrap4 */
.breadcrumb {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0.05rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
}
.breadcrumb-item.active {
  color: #6c757d;
}
.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}
.breadcrumb-item + .breadcrumb-item::before {
  float: left;
  padding-right: 0.5rem;
  color: #6c757d;
  content: ">";
}

.form-group {
  margin-bottom: 1rem;
  min-width: 0;
}
.form-group input[type="text"],
.form-group input[type="url"],
.form-group input[type="email"],
.form-group textarea {
  color: #000;
  border-radius: 0.5em;
  border: 1px solid var(--darkblue-clr);
}

.ui-icon {
  display: inline-block;
}

.form-input {
  margin-bottom: 12px;
  width: 95%;
  padding: 0.4em;
}

.sortable {
  list-style-type: none;
  margin: 0;
  padding: 0;
  user-select: none;
}
.sortable li.sort-li {
  margin: 0 3px 3px 3px;
  padding: 0.4em;
  padding-left: 1.5em;
}
.sortable li.sort-li span.sort-icon {
  position: absolute;
  margin-left: -1.3em;
}

.back_btn {
  background-color: var(--red); /*#199319*/
  color: white;
  padding: 5px 15px;
  margin: 10px;
  display: inline-block;
  border-radius: 1rem;
}
.back_btn:hover {
  font-weight: bold;
}

.product-button {
  background-color: #fff;
  font-family: brandon-grotesque, sans-serif;
  border: 1px solid #6cc24a;
  color: #007377;
  padding: 0 3rem;
  height: 2.5rem;
  text-align: center;
  text-decoration: none;
  margin: 4px 2px;
  cursor: pointer;
  border-radius: 0.5em;
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 2px;
  margin-top: 0px;
}

.product-button:hover {
  color: #fff;
  background-color: #007377;
  margin-bottom: 2px;
  margin-top: 0px;
  border: 1px solid #6cc24a;
}

.submit-tag {
  color: red;
  font-size: 1rem;
  font-weight: bold;
  width: 9em;
  height: 3em;
  background-color: white;
  border: 1px solid #107896;
  border-radius: 0.5em;
  cursor: pointer;
}
.submit-tag:hover {
  /* background-color: var(--grey-clr); */
  outline: auto;
}

#is_link {
  text-decoration: none;
}

/* layout with grid */
#wrapper {
  display: grid;
  grid-template-columns: 1fr 2fr;
  grid-column-gap: 30px;
  grid-row-gap: 0px;
  grid-template-rows: auto;
  grid-template-areas: "content1 content2";
}

#section1 {
  grid-area: content1;
}

#section2 {
  grid-area: content2;
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 2em;
}

#section3 {
  grid-area: 2 / 1 / 3 / 3;
}

.header {
  display: grid;
  grid-template-columns: max-content 1fr max-content;
  padding: 4em;
}

.header nav ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}
.header nav ul li {
  display: block;
  float: left;
  min-width: 3em;
  padding: 1rem;
  position: relative;
  text-decoration: none;
  transition-duration: 0.5s;
}

.header nav ul li a {
  color: var(--grey-clr);
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
  font-weight: bold;
}

.header nav ul li a:hover,
.header nav ul li a.active {
  color: var(--darkblue-clr);
}

.header nav ul li img {
  position: absolute;
  top: 10px;
}

.dropdown-menu {
  position: relative;
}

.dropdown-menu label {
  background: #69bbe8;
  background: -moz-linear-gradient(left, #69bbe8 0%, #523a8e 50%, #d73c46 100%);
  background: -webkit-linear-gradient(
    left,
    #69bbe8 0%,
    #523a8e 50%,
    #d73c46 100%
  );
  background: linear-gradient(to right, #69bbe8 0%, #523a8e 50%, #d73c46 100%);
  color: white;
  font-weight: bold;
  position: relative;
  display: inline-block;
  padding: 10px;
  min-width: 24px;
  text-align: center;
  cursor: pointer;
  border-radius: 50%;
}

.dropdown-menu label:hover {
  background: var(--darkblue-clr);
}

.dropdown-menu input[type="checkbox"] {
  display: none;
}

.dropdown-menu ul {
  position: absolute;
  top: 42px;
  right: 0;
  list-style-type: none;
  padding: 5px 0;
  border: 1px solid #ddd;
  border-radius: 0.3em;
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
  display: none;
  background-color: #fff;
}

.dropdown-menu ul:after,
.dropdown-menu ul:before {
  content: "";
  height: 0;
  width: 0;
  position: absolute;
  bottom: 100%;
  border: solid transparent;
}

.dropdown-menu ul:after {
  border-bottom-color: #fff;
  border-width: 6px;
  left: 85%;
  margin-left: -6px;
}

.dropdown-menu ul:before {
  border-bottom-color: #ddd;
  border-width: 7px;
  left: 85%;
  margin-left: -7px;
}

.dropdown-menu li:last-of-type {
  margin-top: 4px;
}

.dropdown-menu input[type="checkbox"]:checked ~ ul {
  display: block;
}

.dropdown-menu input[type="checkbox"]:checked ~ label {
  left: 1px;
  top: 1px;
  background: var(--darkblue-clr);
}

.ui-state-default,
.ui-widget-content .ui-state-default,
.ui-widget-header .ui-state-default,
.ui-button,
html .ui-button.ui-state-disabled:hover,
html .ui-button.ui-state-disabled:active {
  background: none !important;
  border: none !important;
  margin: 20px auto;
}
.ui-state-default a,
.ui-state-default a:link,
.ui-state-default a:visited,
a.ui-button,
a:link.ui-button,
a:visited.ui-button,
.ui-button {
  color: var(--grey-clr) !important;
}

.tab-headers:not(:last-child)::after {
  content: "";
  display: block;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--grey-clr);
}

.ui-state-active,
.ui-widget-content .ui-state-active,
.ui-widget-header .ui-state-active,
a.ui-button:active,
.ui-button:active,
.ui-button.ui-state-active:hover {
  color: var(--darkblue-clr);
  font-weight: bold;
  background-color: none !important;
  border: none !important;
}
.ui-state-active a,
.ui-state-active a:link,
.ui-state-active a:visited {
  color: inherit !important;
}

.ui-widget-header {
  background-color: transparent !important;
}

.ui-tabs .ui-tabs-panel {
  padding: 0 1.4em;
}

.ui-button-icon-only .ui-icon {
  top: 0 !important;
}

fieldset.search-ctr {
  padding: 0;
  margin-left: 200px;
  border: none;
  display: grid;
  column-gap: 1em;
  grid-template-columns: 0.5fr 0.5fr 1fr 2fr;
  align-items: start;
}
fieldset.search-ctr .search-input {
  padding: 10px;
  border-radius: 0.5em;
  border: 1px solid #6cc24a;
}

.toggle {
  position: relative;
  padding: 10px;
}

.ellipse {
  background-color: #45597e;
  height: 18px;
  width: 40px;
  border-radius: 40%;
  position: absolute;
  top: 15px;
  left: 85px;
  opacity: 0.2;
  pointer-events: auto;
}

input[type="file"] {
  color: var(--grey-clr);
}

input[type="file"]::file-selector-button {
  color: hsl(302, 75%, 46%);
  outline: none;
  border: none;
  padding: 0.3em 1em;
  border-radius: 0.5em;
  background-color: hsl(302, 75%, 98%);
  transition: 1s;
  cursor: pointer;
}
