nav {
  margin-bottom: 40px !important; }

.ui.fixed.main.menu .right.menu > .item:last-of-type {
  border-right: 1px solid rgba(34, 36, 38, 0.0980392); }

nav .mobile.only.row .ui.vertical.menu {
  margin-top: 40px;
  display: none; }

.flashes > .ui.message:last-of-type {
  margin-bottom: 2rem; }

table.selectable tr:hover {
  cursor: pointer !important; }

.ui.container {
  max-width: 1280px;
  padding: 0 1rem; }

.page-content {
  padding: 2rem 0; }

.ui.header.page-header {
  margin-bottom: 2rem; }
  .ui.header.page-header .sub.header {
    margin-top: 0.25rem;
    color: #525252; }

.ui.breadcrumb {
  margin-bottom: 1.5rem;
  font-size: 0.875rem; }
  .ui.breadcrumb .section {
    color: #525252; }
    .ui.breadcrumb .section:hover {
      color: #2185d0; }
    .ui.breadcrumb .section.active {
      color: #171717;
      font-weight: 500; }
  .ui.breadcrumb .divider {
    color: #a3a3a3;
    margin: 0 0.5rem; }

.ui.button {
  transition: all 0.2s ease;
  font-weight: 500; }
  .ui.button.basic.compact {
    padding: 0.5rem 1rem; }
  .ui.button.mini {
    font-size: 0.75rem; }
  .ui.button.tiny {
    font-size: 0.875rem; }
  .ui.button.small {
    font-size: 0.875rem; }
  .ui.button.large {
    font-size: 1.125rem; }
  .ui.button.big {
    font-size: 1.125rem; }
  .ui.button.huge {
    font-size: 1.25rem; }
  .ui.button.massive {
    font-size: 1.5rem; }

.ui.form .field {
  margin-bottom: 1rem; }
  .ui.form .field > label {
    margin-bottom: 0.25rem;
    font-weight: 500;
    color: #404040; }
  .ui.form .field.error input, .ui.form .field.error textarea, .ui.form .field.error select {
    border-color: #db2828; }

.ui.form .form-section {
  margin-bottom: 2rem; }
  .ui.form .form-section:last-child {
    margin-bottom: 0; }

.ui.table {
  font-size: 0.875rem; }
  .ui.table thead th {
    background-color: #fafafa;
    font-weight: 600;
    color: #404040;
    padding: 1rem; }
  .ui.table tbody td {
    padding: 1rem; }
  @media (max-width: 768px) {
    .ui.table.responsive {
      display: block;
      overflow-x: auto;
      white-space: nowrap; } }
.ui.segment {
  border-radius: 0.5rem;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05); }
  .ui.segment.raised {
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); }
  .ui.segment.dashboard-card {
    transition: all 0.2s ease;
    cursor: pointer; }
    .ui.segment.dashboard-card:hover {
      box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
      transform: translateY(-2px); }

.ui.message {
  border-radius: 0.375rem; }
  .ui.message.dismissible {
    padding-right: 3rem; }
    .ui.message.dismissible .close.icon {
      position: absolute;
      right: 1rem;
      top: 1rem;
      cursor: pointer; }

.ui.loader.inline {
  margin-right: 0.5rem; }

.loading-placeholder {
  background: linear-gradient(90deg, #f5f5f5 25%, #e8e8e8 50%, #f5f5f5 75%);
  background-size: 200% 100%;
  animation: loading 1.5s infinite;
  border-radius: 0.25rem;
  height: 20px;
  margin-bottom: 0.5rem; }

@keyframes loading {
  0% {
    background-position: 200% 0; }
  100% {
    background-position: -200% 0; } }

.status-indicator {
  display: inline-flex;
  align-items: center; }
  .status-indicator::before {
    content: '';
    width: 8px;
    height: 8px;
    border-radius: 50%;
    margin-right: 0.25rem; }
  .status-indicator.active::before {
    background-color: #21ba45; }
  .status-indicator.inactive::before {
    background-color: #a3a3a3; }
  .status-indicator.error::before {
    background-color: #db2828; }
  .status-indicator.warning::before {
    background-color: #f2711c; }

@media (max-width: 768px) {
  .ui.container {
    padding: 0 0.5rem; }
  .page-content {
    padding: 1.5rem 0; }
  .ui.header.page-header {
    font-size: 1.25rem; }
  .ui.stackable.grid > .column:not(.row) {
    padding: 0.5rem !important; }
  .mobile.only.row .ui.menu {
    border-radius: 0; } }

.mt-xs {
  margin-top: 0.25rem !important; }

.mt-sm {
  margin-top: 0.5rem !important; }

.mt-md {
  margin-top: 1rem !important; }

.mt-lg {
  margin-top: 1.5rem !important; }

.mt-xl {
  margin-top: 2rem !important; }

.mb-xs {
  margin-bottom: 0.25rem !important; }

.mb-sm {
  margin-bottom: 0.5rem !important; }

.mb-md {
  margin-bottom: 1rem !important; }

.mb-lg {
  margin-bottom: 1.5rem !important; }

.mb-xl {
  margin-bottom: 2rem !important; }

.pt-xs {
  padding-top: 0.25rem !important; }

.pt-sm {
  padding-top: 0.5rem !important; }

.pt-md {
  padding-top: 1rem !important; }

.pt-lg {
  padding-top: 1.5rem !important; }

.pt-xl {
  padding-top: 2rem !important; }

.pb-xs {
  padding-bottom: 0.25rem !important; }

.pb-sm {
  padding-bottom: 0.5rem !important; }

.pb-md {
  padding-bottom: 1rem !important; }

.pb-lg {
  padding-bottom: 1.5rem !important; }

.pb-xl {
  padding-bottom: 2rem !important; }

.text-muted {
  color: #737373; }

.text-small {
  font-size: 0.875rem; }

.text-xs {
  font-size: 0.75rem; }

.fade-in {
  animation: fadeIn 0.3s ease-in; }

@keyframes fadeIn {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }

@media (max-width: 768px) {
  .ui.navigation.grid {
    margin: 0 !important; }
  .ui.container {
    width: 100% !important;
    padding: 0.5rem !important; }
  .ui.stackable.grid {
    margin: 0 !important; }
    .ui.stackable.grid > .column:not(.row),
    .ui.stackable.grid > .row > .column {
      padding: 0.5rem !important; }
  .ui.header.page-header {
    font-size: 1.5rem; }
    .ui.header.page-header .sub.header {
      font-size: 0.875rem; }
  .ui.breadcrumb {
    overflow-x: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
    padding-bottom: 0.5rem; }
    .ui.breadcrumb .section {
      display: inline-block; }
  .ui.form .fields {
    flex-direction: column; }
    .ui.form .fields .field {
      width: 100% !important;
      margin-bottom: 1rem; }
  .ui.form .inline.fields {
    flex-direction: column; }
    .ui.form .inline.fields .field {
      margin-bottom: 0.5rem; }
  .ui.table {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch; }
    .ui.table thead {
      display: none; }
    .ui.table tbody {
      display: block; }
      .ui.table tbody tr {
        display: block;
        border: 1px solid #e0e0e0;
        margin-bottom: 0.5rem;
        border-radius: 4px;
        padding: 0.5rem; }
        .ui.table tbody tr td {
          display: block;
          text-align: left !important;
          padding: 0.5rem 0;
          border: none;
          position: relative;
          padding-left: 40%; }
          .ui.table tbody tr td:before {
            content: attr(data-label);
            position: absolute;
            left: 0;
            width: 35%;
            font-weight: bold;
            text-align: left; }
  .ui.buttons {
    width: 100%; }
    .ui.buttons .button {
      width: 100%;
      margin-bottom: 0.5rem; }
  .ui.right.floated.buttons {
    float: none !important;
    margin-bottom: 1rem; }
  .ui.segment {
    margin: 0.5rem 0;
    padding: 1rem; }
  .ui.modal {
    width: 95% !important;
    margin: 0 !important;
    top: 2.5% !important;
    left: 2.5% !important; }
  .ui.dropdown {
    width: 100%; }
    .ui.dropdown .menu {
      max-height: 200px;
      overflow-y: auto; }
  .ui.cards {
    margin: 0 !important; }
    .ui.cards > .card {
      width: 100% !important;
      margin: 0.5rem 0 !important; }
  .desktop-only {
    display: none !important; }
  .action-bar .ui.buttons {
    flex-direction: column; }
    .action-bar .ui.buttons .button {
      margin: 0.25rem 0; }
  .facebook-preview {
    max-width: 100%;
    margin: 10px 0; }
  .ui.pagination.menu {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    display: flex; }
    .ui.pagination.menu .item {
      min-width: 40px;
      padding: 0.5rem; } }

@media (min-width: 769px) and (max-width: 992px) {
  .ui.container {
    width: 95%; }
  .ui.table {
    font-size: 0.875rem; }
    .ui.table th, .ui.table td {
      padding: 0.5rem; } }

@media (pointer: coarse) {
  .ui.button {
    min-height: 44px;
    min-width: 44px; }
  .ui.dropdown {
    min-height: 44px; }
  input[type="text"],
  input[type="email"],
  input[type="password"],
  input[type="tel"],
  input[type="number"],
  textarea,
  select {
    min-height: 44px;
    font-size: 16px; }
  .ui.checkbox {
    min-height: 44px;
    display: flex;
    align-items: center; }
    .ui.checkbox input {
      width: 20px;
      height: 20px; } }

@media print {
  .ui.navigation,
  .ui.breadcrumb,
  .action-bar,
  .ui.pagination,
  .no-print {
    display: none !important; }
  .ui.container {
    width: 100% !important;
    max-width: none !important; }
  .ui.segment {
    border: 1px solid #000;
    box-shadow: none; } }

.mobile-only {
  display: none; }

.tablet-only {
  display: none; }

.desktop-only {
  display: block; }

@media (max-width: 768px) {
  .mobile-only {
    display: block; }
  .tablet-only {
    display: none; }
  .desktop-only {
    display: none; } }

@media (min-width: 769px) and (max-width: 992px) {
  .mobile-only {
    display: none; }
  .tablet-only {
    display: block; }
  .desktop-only {
    display: none; } }

@media (max-width: 768px) {
  .text-responsive {
    font-size: 0.875rem; } }

@media (max-width: 768px) {
  .spacing-responsive {
    padding: 0.5rem;
    margin: 0.5rem 0; } }
