/* This file is for your main application css. */

@import "../node_modules/nprogress/nprogress.css";
@import "../node_modules/@yaireo/tagify/dist/tagify.css";


@tailwind base; 

* { 
  -moz-box-sizing: border-box; 
  -webkit-box-sizing: border-box; 
   box-sizing: border-box; 
}

:root {
  --inner-window-height: 100%;
}

html,
body {
 padding: 0;
 margin: 0;
}

[type='checkbox'], [type='radio'] {
  background-color: transparent;
  color: inherit;
}

#boundaries_selection tags, #boundaries_selection_tagify {
  border: none;
}

.tagify {
  @apply rounded;
  --placeholder-color: hsl(var(--bc)/80);
  --placeholder-color-focus: hsl(var(--bc)/80);
  --input-color:  hsl(var(--bc)/70);
  --tags-border-color: hsl(var(--bc)/20);
  --tag-bg: var(--in);
  --tag-hover: var(--tag-bg);
  --tag-remove-bg: var(--tag-bg);
}
.tagify--outside tag,
.tagify tag {
  @apply rounded bg-info;
}

.tagify__dropdown__wrapper {
}
.tagify__dropdown__item {
  @apply text-slate-800;
}
.tagify__dropdown__item:hover,
.tagify__dropdown__item--active {
}

.tagify--outside{
  border: 0;
}

.tagify--outside .tagify__input{
  @apply rounded;
  order: -1;
  flex: 100%;
  border: 1px solid var(--tags-border-color);
  transition: .1s;
}

.tagify--outside .tagify__input:hover{ border-color:var(--tags-hover-border-color); }
.tagify--outside.tagify--focus .tagify__input{
  transition: 0s;
  border-color: var(--tags-focus-border-color);
}

.badge-lg {
  height: 2rem;
}
.menu svg path {
  stroke-width: 1;
}

.full-height {
  height: 100%;
}


.widget {
  height: calc(var(--inner-window-height) - 24px) ;
}


#bonfire_layout {
  height: calc(var(--inner-window-height) - 60px);
  overflow-y: auto;
}
@media (max-width: 768px) { 
  .widget {
    height: 0;
  }
  #bonfire_layout {
    height: 100%;
    overflow-y: hidden;
  }
}

.checkbox {
  background-color: transparent;
}

[x-cloak] {
  display: none !important;
} 

.lined:before {
  position: absolute;
  content: "";
  display: block;
  width: 3px;
  border-radius: 100px;
  left: 0;
  top: 0px;
  bottom: 0px;
  @apply bg-primary
}

.dropdown.open:before {
  content: " ";
  background: transparent;
  display: block;
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
  z-index: 10;
}


.wide {
  width: 640px;
}


.main_reply_to {
  padding-left: 0.75rem !important
}

/* LiveView specific classes for your customizations */
.phx-no-feedback.invalid-feedback,
.phx-no-feedback .invalid-feedback {
  display: none;
}

.phx-click-loading {
  opacity: 0.5;
  transition: opacity 1s ease-out;
}

.phx-disconnected{
  cursor: wait;
}
.phx-disconnected *{
  pointer-events: none;
}

.phx-modal {
  opacity: 1!important;
  position: fixed;
  z-index: 1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgb(0,0,0);
  background-color: rgba(0,0,0,0.4);
}

.phx-modal-content {
  background-color: #fefefe;
  margin: 15% auto;
  padding: 20px;
  border: 1px solid #888;
  width: 80%;
}

.phx-modal-close {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.phx-modal-close:hover,
.phx-modal-close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}


.invalid-feedback {
  color: #a94442;
  display: block;
  margin: -1rem 0 2rem;
}


@tailwind components;
@tailwind utilities;


/* Import with  */
/* @import './scrollbar-color.css';  */

:root {
  --scrollbarTrack: hsla(var(--b2));
  --scrollbarThumb: hsla(var(--bc)/0.1);
  --scrollbarThumbHover: hsla(var(--bc)/0.2);
}
/* Scrollbar colors*/
/* width */
::-webkit-scrollbar {
  width: 10px;
}

/* Track */
::-webkit-scrollbar-track {
  background: var(--scrollbarTrack);
}


::-webkit-scrollbar-track:hover {
  background: var(--b1);
}


/* Handle */
::-webkit-scrollbar-thumb {
  background: var(--scrollbarThumb);
  border-radius: 3px
}

/* Handle on hover */


.menu .menu-title>a, .menu .menu-title>span {
  font-weight: normal
}

.feed_activity_action {
  @apply flex items-center space-x-1 rounded cursor-pointer;
}

.feed_activity .dropdown-content {
  transform: none
}

.feed_activity_text_active {
  @apply text-primary;
}

.feed_activity_action:hover .feed_activity_icon {
    @apply bg-base-300 bg-opacity-50;
}

.feed_activity_action:hover .feed_activity_text {
  @apply text-opacity-100;
}

.feed_activity_action:hover .feed_activity_icon svg {
  @apply text-base-content;
}

.feed_activity_icon_active {
  @apply text-primary;
}


.feed_activity_icon {
  @apply flex items-center rounded h-8 w-8 place-content-center;
}



.feed_activity_text {
  @apply text-xs font-normal text-base-content flex;
}

.reply_to {
  margin-left: 0 !important;
}

.dropdown_actions li a {
  @apply text-neutral p-2
}

.comment_lined {
  position: absolute;
  content: "";
  top: 50px;
  bottom: -10px;  
  width: 2px;
  left: 30px;
  z-index: 999999;
  @apply bg-base-200;
}

.profile_item:hover {
  background-color: hsla(var(--bc)/var(--tw-bg-opacity,1));
}


.sortable-ghost {
  @apply bg-gray-300 text-gray-300;
}

.h-modal {
  height: calc(var(--inner-window-height) - 48px);
}

.h-bonfire-logged {
  height: calc(var(--inner-window-height) - 96px);
}


body {
  scrollbar-gutter: stable both-edges;
}

html, body, a {
  @apply text-base-content;
}

a, .link, .link-hover {
  text-decoration-skip: objects;
  text-decoration-skip-ink: auto;
}

.alert {
  display: block;
}


article .prose {
  color: hsla(var(--bc) / 0.9);
}



.write_post_content {
  @apply text-base-content;
  --ck-color-engine-placeholder-text: hsla(var(--bc) / 0.8);
  --ck-color-mention-background: transparent ;
  --ck-color-mention-text: hsla(var(--sc) / 1) ;
}

.write_post_content .mention {
  font-weight: 500;
}


.prose .mention {
  @apply link-primary link-hover;
}
.mention-item {
  @apply flex items-center font-semibold;
}

.mention-item .mention-item-name {
  font-size: 14px !important;
  color: hsla(var(--n)) !important;
  font-weight: 700 !important;
}

.mention-item .mention-item-username {
  margin-left: 4px !important;
  color: hsla(var(--n) / 0.7) !important;
}

.ck.ck-placeholder:before,
.ck .ck-placeholder:before {
  @apply text-base-content text-opacity-80;
}

.ck.ck-editor__editable_inline>:first-child {
  margin-top: 8px !important;
}

.ck.ck-list__item {
  cursor: pointer !important;
  border-radius: 4px !important;
}

.ck.ck-list__item .ck-button {
  cursor: pointer !important;
}

.ck.ck-list__item .ck-button.ck-on {
  background-color: hsla(var(--p) / 0.2) !important;
}

.ck.ck-reset.ck-list.ck-mentions {
  @apply p-1.5 rounded border-none;
}

.ck-content .mention {
  color: hsla(var(--bc) / 0.2) !important;
}

.ck.ck-balloon-panel.ck-balloon-panel_caret_se.ck-balloon-panel_visible {
  border-radius: 4px !important;
}

.editor_area#editor {
  border: none !important;
}

.background-invisible:before {
  content: "";
  position: absolute;
  z-index: -1;
  background-color: hsla(var(--b3) / 1);
  left: -8px;
  right: -8px;
  bottom: 0px;
  display: block;
  @apply top-0 tablet:top-[-1rem];
}
@media (max-width: 768px) { 
  .background-invisible:before {
    top: 0rem;
  }
}

.sm_background-invisible:before {
  content: "";
  position: absolute;
  z-index: -1;
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: -1rem;
  display: block;
}


emoji-picker {
  --emoji-size: 1.2rem;
  --emoji-padding: 0.4rem;
  --background: hsla(var(--b3) / 1);
  --num-columns: 6;
  --border-color: hsla(var(--b3) / 1);
  --button-hover-background: hsla(var(--bc) / 4);
  width: 280px;
  height: 200px;
}

.no-padding {
  padding: 0 !important;
}

@keyframes fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.fade-out {
  animation: fade-out 1s;
  animation-delay: 5s;
  animation-fill-mode: forwards;
  opacity: 1;
}

@media (max-width: 1200px) { 
  .tooltip::before {
    content: "";
    display: none;
  }
  .tooltip::after {
    content: "";
    display: none;
  }
}

.scrolling-container {
  @apply h-full min-h-full	min-h-[100px] max-h-[150px];
}

.ql-container {
  font-size: 18px !important;
  height: 100%;
  flex: 1;
  display: flex;
  flex-direction: column;
}
.ql-editor {
  @apply h-full min-h-full;
  flex: 1;
  overflow-y: visible !important;
  overflow-x: auto;
  padding: 15px !important;
}

.ql-editor.ql-blank::before {
  @apply !text-base-content/70
}

.ql-mention-list-container {
  width:270px;
  border:1px solid #f0f0f0;
  border-radius:4px;
  background-color:#fff;
  box-shadow:0 2px 12px 0 rgba(30,30,30,.08);
  z-index:9001;
  overflow:auto
}

.ql-tooltip {
  z-index: 999999999;
}
.ql-mention-loading{line-height:44px;padding:0 20px;vertical-align:middle;font-size:16px}
.ql-mention-list{list-style:none;margin:0;padding:0;overflow:hidden}
.ql-mention-list-item{cursor:pointer;line-height:44px;font-size:16px;padding:0 20px;vertical-align:middle}
.ql-mention-list-item.disabled{cursor:auto}
.ql-mention-list-item.selected{background-color:#d3e1eb;text-decoration:none}
.ql-editor .mention {
  @apply bg-slate-300;
  height:24px;
  width:65px;
  border-radius:6px; 
  padding:3px 0;
  margin-right:2px;
  user-select:all
}
.ql-editor .mention a {
  @apply text-slate-800;
  text-decoration: none !important;
}
.ql-editor .mention>span {
  margin: 0 3px
}


.modal-bottom :where(.modal-box) {
  --tw-translate-y: 0;
}

.smart_input_container {
  --tw-shadow: 0 10px 35px -5px rgb(0 0 0 / 0.8), 0 8px 10px -6px rgb(0 0 0 / 0.1);
}

.upload-entry img {
  @apply w-full h-[140px] object-cover rounded-lg;
}

.media_container img.media-image {
  @apply !h-[160px] !max-w-[160px] object-cover;
}

.media-entry button {
  @apply w-full h-full
}


.media-single button {
  max-width: 100%;
  max-height: 100%;
  width: 100%;
}

.media-multiple button {
  width: 100%;
  height: 100%;
}


.tab.tab-bordered {
  --tw-border-opacity: 0;
  --tab-border: 3px;
}

.tab.tab-active {
  @apply text-base-content font-bold border-primary;
  --tab-color: hsla(var(--p) / var(--tw-text-opacity, 1));
}


.hide {
  display: none !important;
}

.modal-box {
  width: 100% !important;
}

.not-distraction-free {
  word-break: break-word;
}

.tab.tab-bordered {
  height: auto;
  padding-bottom: 6px;
}

.text-sm pre,
.text-sm code {
  font-size: 0.8rem;
}