/* Catppuccin Mocha override for AgenDAV 2.4.0 (Bootstrap 3 + fullcalendar 2 + jQuery UI)
   Injected via SWAG sub_filter - serves from /config/www/catppuccin-agendav.css
   Palette: https://catppuccin.com/palette (Mocha) */

:root {
  --ctp-base: #1e1e2e;
  --ctp-mantle: #181825;
  --ctp-crust: #11111b;
  --ctp-surface0: #313244;
  --ctp-surface1: #45475a;
  --ctp-surface2: #585b70;
  --ctp-overlay0: #6c7086;
  --ctp-text: #cdd6f4;
  --ctp-subtext0: #a6adc8;
  --ctp-lavender: #b4befe;
  --ctp-blue: #89b4fa;
  --ctp-green: #a6e3a1;
  --ctp-red: #f38ba8;
  --ctp-peach: #fab387;
  --ctp-yellow: #f9e2af;
  --ctp-mauve: #cba6f7;
  --ctp-teal: #94e2d5;
}

/* ---- base ---- */
html, body {
  background: var(--ctp-base) !important;
  color: var(--ctp-text) !important;
}
h1, h2, h3, h4, h5, h6, legend, label, .control-label {
  color: var(--ctp-text) !important;
}
a { color: var(--ctp-blue) !important; }
a:hover, a:focus { color: var(--ctp-lavender) !important; }
.page-header { border-bottom-color: var(--ctp-surface1) !important; }
hr { border-color: var(--ctp-surface1) !important; }
::selection { background: var(--ctp-surface2); }

/* ---- login box / generic blocks ---- */
.loginform, .block, .well, .panel, .panel-default {
  background: var(--ctp-mantle) !important;
  border-color: var(--ctp-surface1) !important;
  color: var(--ctp-text) !important;
}
.panel-heading {
  background: var(--ctp-surface0) !important;
  border-color: var(--ctp-surface1) !important;
  color: var(--ctp-text) !important;
}

/* ---- forms ---- */
.form-control, input, select, textarea {
  background: var(--ctp-surface0) !important;
  border-color: var(--ctp-surface1) !important;
  color: var(--ctp-text) !important;
}
.form-control:focus {
  border-color: var(--ctp-lavender) !important;
  box-shadow: 0 0 0 2px rgba(180, 190, 254, 0.25) !important;
}
.form-control::placeholder { color: var(--ctp-overlay0) !important; }
.input-group-addon {
  background: var(--ctp-surface1) !important;
  border-color: var(--ctp-surface1) !important;
  color: var(--ctp-text) !important;
}

/* ---- buttons ---- */
.btn-default {
  background: var(--ctp-surface1) !important;
  border-color: var(--ctp-surface2) !important;
  color: var(--ctp-text) !important;
}
.btn-default:hover, .btn-default:focus, .btn-default.active {
  background: var(--ctp-surface2) !important;
  color: var(--ctp-text) !important;
}
.btn-primary {
  background: var(--ctp-blue) !important;
  border-color: var(--ctp-blue) !important;
  color: var(--ctp-crust) !important;
}
.btn-primary:hover, .btn-primary:focus { background: var(--ctp-lavender) !important; border-color: var(--ctp-lavender) !important; }
.btn-success {
  background: var(--ctp-green) !important;
  border-color: var(--ctp-green) !important;
  color: var(--ctp-crust) !important;
}
.btn-success:hover, .btn-success:focus { filter: brightness(1.1); }
.btn-danger {
  background: var(--ctp-red) !important;
  border-color: var(--ctp-red) !important;
  color: var(--ctp-crust) !important;
}
.btn-link { color: var(--ctp-blue) !important; }
.close { color: var(--ctp-text) !important; opacity: 0.7; text-shadow: none !important; }

/* ---- navbar ---- */
.navbar, .navbar-default {
  background: var(--ctp-mantle) !important;
  border-color: var(--ctp-surface1) !important;
}
.navbar-default .navbar-nav > li > a, .navbar-default .navbar-brand { color: var(--ctp-text) !important; }
.navbar-default .navbar-nav > li > a:hover { color: var(--ctp-lavender) !important; }
.navbar-default .navbar-nav > .active > a {
  background: var(--ctp-surface0) !important;
  color: var(--ctp-lavender) !important;
}

/* ---- dropdowns / popovers / tooltips / modals ---- */
.dropdown-menu {
  background: var(--ctp-surface0) !important;
  border-color: var(--ctp-surface1) !important;
}
.dropdown-menu > li > a { color: var(--ctp-text) !important; }
.dropdown-menu > li > a:hover { background: var(--ctp-surface1) !important; color: var(--ctp-text) !important; }
.dropdown-menu .divider { background: var(--ctp-surface1) !important; }
.modal-content {
  background: var(--ctp-base) !important;
  border-color: var(--ctp-surface1) !important;
  color: var(--ctp-text) !important;
}
.modal-header, .modal-footer { border-color: var(--ctp-surface1) !important; }
.modal-backdrop { background: var(--ctp-crust) !important; }
.popover {
  background: var(--ctp-surface0) !important;
  border-color: var(--ctp-surface1) !important;
  color: var(--ctp-text) !important;
}
.popover-title { background: var(--ctp-surface1) !important; color: var(--ctp-text) !important; border-color: var(--ctp-surface2) !important; }
.popover.top > .arrow:after { border-top-color: var(--ctp-surface0) !important; }
.popover.bottom > .arrow:after { border-bottom-color: var(--ctp-surface0) !important; }
.popover.left > .arrow:after { border-left-color: var(--ctp-surface0) !important; }
.popover.right > .arrow:after { border-right-color: var(--ctp-surface0) !important; }
.tooltip-inner { background: var(--ctp-surface1) !important; color: var(--ctp-text) !important; }

/* ---- tabs / pills ---- */
.nav-tabs { border-bottom-color: var(--ctp-surface1) !important; }
.nav-tabs > li > a { color: var(--ctp-subtext0) !important; }
.nav-tabs > li > a:hover { background: var(--ctp-surface0) !important; border-color: var(--ctp-surface1) !important; }
.nav-tabs > li.active > a, .nav-tabs > li.active > a:hover, .nav-tabs > li.active > a:focus {
  background: var(--ctp-base) !important;
  border-color: var(--ctp-surface1) !important;
  border-bottom-color: transparent !important;
  color: var(--ctp-lavender) !important;
}

/* ---- tables ---- */
.table > thead > tr > th, .table > tbody > tr > td, .table > tbody > tr > th {
  border-color: var(--ctp-surface1) !important;
  color: var(--ctp-text) !important;
}
.table-striped > tbody > tr:nth-of-type(odd) { background: var(--ctp-mantle) !important; }
.table-hover > tbody > tr:hover { background: var(--ctp-surface0) !important; }

/* ---- fullcalendar 2.x ---- */
.fc th, .fc td, .fc-unthemed .fc-divider, .fc-unthemed .fc-popover, .fc-unthemed .fc-row,
.fc-unthemed tbody, .fc-unthemed td, .fc-unthemed th, .fc-unthemed thead {
  border-color: var(--ctp-surface1) !important;
}
.fc-unthemed .fc-divider, .fc-unthemed .fc-popover .fc-header, .fc-unthemed .fc-list-heading td {
  background: var(--ctp-surface0) !important;
}
.fc-unthemed .fc-popover { background: var(--ctp-surface0) !important; }
.fc-unthemed .fc-today { background: rgba(180, 190, 254, 0.10) !important; }
.fc-toolbar h2, .fc th, .fc-day-number, .fc-week-number { color: var(--ctp-text) !important; }
.fc-other-month { background: var(--ctp-mantle) !important; }
.fc-other-month .fc-day-number { color: var(--ctp-overlay0) !important; }
.fc-unthemed .fc-list-view { border-color: var(--ctp-surface1) !important; }
.fc-unthemed .fc-list-item:hover td { background: var(--ctp-surface0) !important; }
.fc-axis, .fc-time { color: var(--ctp-subtext0) !important; }
.fc-unthemed .fc-disabled-day { background: var(--ctp-crust) !important; }
.fc button {
  background: var(--ctp-surface1) !important;
  border-color: var(--ctp-surface2) !important;
  color: var(--ctp-text) !important;
  text-shadow: none !important;
}
.fc button.fc-state-active { background: var(--ctp-surface2) !important; color: var(--ctp-lavender) !important; }
.fc-event { border-color: transparent; }

/* ---- jQuery UI (dialogs, datepicker, autocomplete) ---- */
.ui-widget-content {
  background: var(--ctp-base) !important;
  border-color: var(--ctp-surface1) !important;
  color: var(--ctp-text) !important;
}
.ui-widget-header {
  background: var(--ctp-mantle) !important;
  border-color: var(--ctp-surface1) !important;
  color: var(--ctp-text) !important;
}
.ui-dialog { background: var(--ctp-base) !important; border-color: var(--ctp-surface1) !important; }
.ui-dialog .ui-dialog-titlebar { background: var(--ctp-mantle) !important; }
.ui-state-default, .ui-widget-content .ui-state-default, .ui-widget-header .ui-state-default {
  background: var(--ctp-surface1) !important;
  border-color: var(--ctp-surface2) !important;
  color: var(--ctp-text) !important;
}
.ui-state-hover, .ui-state-focus { background: var(--ctp-surface2) !important; color: var(--ctp-text) !important; }
.ui-state-active, .ui-widget-content .ui-state-active {
  background: var(--ctp-lavender) !important;
  border-color: var(--ctp-lavender) !important;
  color: var(--ctp-crust) !important;
}
.ui-state-highlight, .ui-widget-content .ui-state-highlight {
  background: var(--ctp-surface0) !important;
  border-color: var(--ctp-yellow) !important;
  color: var(--ctp-text) !important;
}
.ui-tabs .ui-tabs-nav li.ui-tabs-active a { color: var(--ctp-lavender) !important; }
.ui-corner-all { border-radius: 6px; }

/* ---- misc AgenDAV bits ---- */
#logo { background: transparent !important; }
#logo img { filter: invert(0.82) hue-rotate(180deg); }
.alert-info {
  background: var(--ctp-surface0) !important;
  border-color: var(--ctp-blue) !important;
  color: var(--ctp-text) !important;
}
.alert-danger, .alert-error {
  background: rgba(243, 139, 168, 0.15) !important;
  border-color: var(--ctp-red) !important;
  color: var(--ctp-text) !important;
}
.alert-success {
  background: rgba(166, 227, 161, 0.15) !important;
  border-color: var(--ctp-green) !important;
  color: var(--ctp-text) !important;
}
.label-default { background: var(--ctp-surface2) !important; }
.text-muted, .help-block { color: var(--ctp-subtext0) !important; }

/* scrollbars (webkit) */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: var(--ctp-mantle); }
::-webkit-scrollbar-thumb { background: var(--ctp-surface2); border-radius: 5px; }
::-webkit-scrollbar-thumb:hover { background: var(--ctp-overlay0); }
