/* TokuMail UI polish — light corporate, consistent icons & surfaces */
:root {
  --toku-bg: #f4f4f5;
  --toku-surface: #ffffff;
  --toku-border: #e4e4e7;
  --toku-text: #18181b;
  --toku-muted: #71717a;
  --toku-orange: #ea580c;
  --toku-orange-deep: #c2410c;
  --toku-orange-soft: #fff7ed;
  --toku-on-orange: #ffffff;
  --toku-radius: 12px;
  --toku-shadow: 0 1px 2px rgba(24, 24, 27, 0.04), 0 4px 16px rgba(24, 24, 27, 0.03);
}

/* Typography */
html, body,
body.skin-toku,
.wrapper, .content-wrapper, .right-side, .main-footer, .main-header,
.main-sidebar, .left-side, .sidebar, .sidebar-menu,
.content-header, .content-header > h1, .content-header > h1 > small,
h1, h2, h3, h4, h5, h6,
.box-title, .form-control,
.btn, .nav, .navbar, .dropdown-menu, .breadcrumb, label,
input, select, textarea, button, .select2-container,
.login-box, .login-box-body, .login-box-msg {
  font-family: "Sora", system-ui, -apple-system, sans-serif !important;
  letter-spacing: -0.01em;
}

.fa, .fas, .far, .fal, .glyphicon, .ion,
i.fa, i.glyphicon, i.ion {
  letter-spacing: normal !important;
}

body.skin-toku {
  background: var(--toku-bg) !important;
  color: var(--toku-text);
}

body.skin-toku .content-wrapper,
body.skin-toku .right-side {
  background-color: var(--toku-bg) !important;
  color: var(--toku-text);
  min-height: calc(100vh - 50px);
}

body.skin-toku .main-footer {
  background: transparent !important;
  color: var(--toku-muted) !important;
  border-top: 0 !important;
  font-size: 11px;
  opacity: 0.55;
}

/* Header */
body.skin-toku .main-header .logo,
body.skin-toku .main-header .logo:hover {
  color: var(--toku-orange) !important;
  font-weight: 700 !important;
  letter-spacing: -0.03em;
}
body.skin-toku .main-header .navbar {
  box-shadow: none;
}
body.skin-toku .main-header .sidebar-toggle {
  border-radius: 8px;
  margin: 8px 6px;
  padding: 8px 12px !important;
}

/* Content header */
body.skin-toku .content-header {
  padding: 18px 20px 8px;
}
body.skin-toku .content-header > h1 {
  font-size: 22px;
  font-weight: 700;
  color: var(--toku-text) !important;
  margin: 0;
}
body.skin-toku .content-header > h1 > small,
body.skin-toku .content-header .breadcrumb {
  color: var(--toku-muted) !important;
  font-weight: 400;
}
body.skin-toku .breadcrumb {
  background: transparent;
  padding: 4px 0 0;
  margin: 0;
  float: none !important;
}
body.skin-toku .breadcrumb > li + li:before {
  color: #a1a1aa;
}

/* Hide awkward favorites tooltip by default — keep icon subtle */
body.skin-toku .favorite-page-toggle + .tooltip,
body.skin-toku .tooltip.in {
  opacity: 0.95;
}
body.skin-toku .favorite-page-toggle {
  opacity: 0.45;
  transition: opacity .15s ease;
}
body.skin-toku .favorite-page-toggle:hover {
  opacity: 1;
  color: var(--toku-orange) !important;
}

/* Cards / boxes */
body.skin-toku .box,
body.skin-toku .info-box,
body.skin-toku .panel,
body.skin-toku .modal-content,
body.skin-toku .nav-tabs-custom {
  background: var(--toku-surface) !important;
  border: 1px solid var(--toku-border) !important;
  border-radius: var(--toku-radius) !important;
  color: var(--toku-text);
  box-shadow: var(--toku-shadow) !important;
}
body.skin-toku .box {
  border-top: 1px solid var(--toku-border) !important;
  margin-bottom: 20px;
}
body.skin-toku .box.box-primary,
body.skin-toku .box.box-info,
body.skin-toku .box.box-success,
body.skin-toku .box.box-warning,
body.skin-toku .box.box-danger {
  border-top: 1px solid var(--toku-border) !important;
}
body.skin-toku .box.borderless {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}
body.skin-toku .box-header {
  background: var(--toku-surface) !important;
  border-bottom: 1px solid var(--toku-border) !important;
  border-radius: var(--toku-radius) var(--toku-radius) 0 0 !important;
  padding: 14px 18px;
}
body.skin-toku .box-body {
  padding: 18px;
}
body.skin-toku .box-footer,
body.skin-toku .panel-footer,
body.skin-toku .modal-footer {
  background: #fafafa !important;
  border-color: var(--toku-border) !important;
  border-radius: 0 0 var(--toku-radius) var(--toku-radius);
}
body.skin-toku .box-header .box-title {
  font-size: 15px;
  font-weight: 650;
  color: var(--toku-text) !important;
}

/* Sidebar */
body.skin-toku .main-sidebar,
body.skin-toku .left-side {
  background: #fafafa !important;
  border-right: 1px solid var(--toku-border);
}
body.skin-toku .sidebar-menu > li > a {
  margin: 2px 10px;
  border-radius: 8px !important;
  border-left: 0 !important;
  color: #52525b !important;
  padding: 10px 12px !important;
}
body.skin-toku .sidebar-menu > li:hover > a,
body.skin-toku .sidebar-menu > li.menu-open > a {
  background: #fff !important;
  color: var(--toku-text) !important;
  box-shadow: 0 0 0 1px var(--toku-border);
}
body.skin-toku .sidebar-menu > li.active > a {
  background: var(--toku-orange-soft) !important;
  color: var(--toku-orange-deep) !important;
  font-weight: 650;
  box-shadow: none;
}
body.skin-toku .sidebar-menu > li > a > .fa,
body.skin-toku .sidebar-menu > li > a > .glyphicon,
body.skin-toku .sidebar-menu > li > a > .ion {
  width: 1.4em;
  margin-right: 0.45em;
  color: #a1a1aa;
  font-size: 1.15em;
  vertical-align: -0.08em;
}
body.skin-toku .sidebar-menu > li.active > a > .fa,
body.skin-toku .sidebar-menu > li:hover > a > .fa,
body.skin-toku .sidebar-menu > li.active > a > .glyphicon,
body.skin-toku .sidebar-menu > li:hover > a > .glyphicon,
body.skin-toku .sidebar-menu > li.active > a > .ion,
body.skin-toku .sidebar-menu > li:hover > a > .ion {
  color: var(--toku-orange) !important;
}
body.skin-toku .sidebar-menu > li > .treeview-menu {
  background: transparent !important;
  padding: 2px 0 8px 0;
  margin: 0 10px !important;
}
body.skin-toku .treeview-menu > li > a {
  padding: 8px 12px 8px 36px !important;
  border-radius: 8px;
  color: #71717a !important;
}
body.skin-toku .treeview-menu > li.active > a,
body.skin-toku .treeview-menu > li > a:hover {
  background: #fff !important;
  color: var(--toku-orange-deep) !important;
}
/* Submenu bullets — small consistent dots, not huge circles */
body.skin-toku .treeview-menu > li > a > .fa-circle,
body.skin-toku .treeview-menu > li > a > .fa.fa-circle {
  font-size: 7px !important;
  width: 12px !important;
  margin-right: 10px !important;
  vertical-align: middle !important;
  opacity: 0.45;
  color: #a1a1aa !important;
}
body.skin-toku .treeview-menu > li.active > a > .fa-circle,
body.skin-toku .treeview-menu > li > a:hover > .fa-circle {
  opacity: 1;
  color: var(--toku-orange) !important;
}
body.skin-toku .sidebar-menu > li > a > .pull-right-container > .fa-angle-left {
  font-size: 12px;
  margin-top: 3px;
  color: #a1a1aa;
}

/* Forms */
body.skin-toku .form-control,
body.skin-toku .select2-container--default .select2-selection--single,
body.skin-toku .select2-dropdown,
body.skin-toku .filters .form-control,
body.skin-toku .grid-view .filters input,
body.skin-toku .grid-view .filters select {
  background-color: #fff !important;
  border: 1px solid var(--toku-border) !important;
  color: var(--toku-text) !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  min-height: 36px;
  height: auto !important;
  padding: 7px 11px !important;
}
body.skin-toku .form-control:focus,
body.skin-toku .filters .form-control:focus {
  border-color: var(--toku-orange) !important;
  box-shadow: 0 0 0 3px rgba(234, 88, 12, 0.14) !important;
}
body.skin-toku label,
body.skin-toku .control-label {
  color: #3f3f46;
  font-weight: 550;
  font-size: 13px;
}
body.skin-toku .help-block {
  color: var(--toku-muted);
}

/* Buttons */
body.skin-toku .btn {
  border-radius: 8px !important;
  font-weight: 600;
  padding: 8px 14px;
  line-height: 1.35;
}
body.skin-toku .btn-primary,
body.skin-toku .btn-info,
body.skin-toku .pagination > .active > a,
body.skin-toku .pagination > .active > span {
  background-color: var(--toku-orange) !important;
  border-color: var(--toku-orange) !important;
  color: var(--toku-on-orange) !important;
}
body.skin-toku .btn-primary:hover,
body.skin-toku .btn-info:hover,
body.skin-toku .btn-primary:focus,
body.skin-toku .btn-info:focus {
  background-color: var(--toku-orange-deep) !important;
  border-color: var(--toku-orange-deep) !important;
  color: var(--toku-on-orange) !important;
}
body.skin-toku .btn-default,
body.skin-toku .btn-secondary {
  background: #fff !important;
  border-color: var(--toku-border) !important;
  color: var(--toku-text) !important;
}
body.skin-toku .btn-default:hover {
  background: #fafafa !important;
  border-color: #d4d4d8 !important;
}
body.skin-toku .btn .fa,
body.skin-toku .btn .glyphicon,
body.skin-toku .btn .ion {
  color: inherit;
}
body.skin-toku .btn-primary .fa,
body.skin-toku .btn-primary .glyphicon,
body.skin-toku .btn-info .fa {
  color: var(--toku-on-orange) !important;
}
/* Login button: use sign-in glyph instead of caret-circle */
body.skin-toku.login-page .btn-primary .fa-chevron-circle-right:before,
body.skin-toku.register-page .btn-primary .fa-chevron-circle-right:before {
  content: "\e428" !important; /* Phosphor sign-in */
}

/* Tables */
body.skin-toku .table > thead > tr > th {
  border-bottom: 1px solid var(--toku-border) !important;
  color: var(--toku-muted);
  font-weight: 650;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  background: #fafafa;
  padding: 12px 14px !important;
}
body.skin-toku .table > tbody > tr > td {
  border-color: var(--toku-border) !important;
  color: var(--toku-text);
  vertical-align: middle;
  padding: 12px 14px !important;
}
body.skin-toku .table-striped > tbody > tr:nth-of-type(odd) {
  background-color: #fcfcfc;
}
body.skin-toku .table-hover > tbody > tr:hover {
  background-color: var(--toku-orange-soft);
}
body.skin-toku .grid-view {
  padding-top: 4px;
}
body.skin-toku .grid-view .summary {
  color: var(--toku-muted);
  font-size: 12px;
  margin-bottom: 10px;
}

/* Dashboard KPI / small-box */
body.skin-toku .boxes-mw-wrapper .small-box {
  border-radius: var(--toku-radius) !important;
  border: 1px solid var(--toku-border) !important;
  background: #fff !important;
  box-shadow: var(--toku-shadow) !important;
  color: var(--toku-text) !important;
  min-height: 110px;
  margin-bottom: 18px;
}
body.skin-toku .boxes-mw-wrapper .small-box > .inner {
  padding: 18px 18px 16px;
}
body.skin-toku .boxes-mw-wrapper .small-box h3 {
  font-size: 28px !important;
  font-weight: 750 !important;
  color: var(--toku-text) !important;
  margin: 0 0 4px !important;
  letter-spacing: -0.03em;
}
body.skin-toku .boxes-mw-wrapper .small-box h3 a {
  color: inherit !important;
}
body.skin-toku .boxes-mw-wrapper .small-box p {
  color: var(--toku-muted) !important;
  font-size: 12px !important;
  font-weight: 550;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  margin: 0 !important;
}
body.skin-toku .boxes-mw-wrapper .small-box .icon {
  color: var(--toku-orange) !important;
  opacity: 0.42 !important;
  top: 10px !important;
  right: 14px !important;
  font-size: 52px !important;
}
body.skin-toku .boxes-mw-wrapper .small-box .icon > i {
  color: inherit !important;
  opacity: 1 !important;
}
body.skin-toku .boxes-mw-wrapper .small-box:hover .icon {
  opacity: 0.62 !important;
  font-size: 56px !important;
}
body.skin-toku .boxes-mw-wrapper .small-box:hover {
  border-color: #fdba74 !important;
  transform: translateY(-1px);
  transition: all .15s ease;
}

/* Info boxes */
body.skin-toku .info-box {
  min-height: 88px;
  overflow: hidden;
}
body.skin-toku .info-box-icon {
  background: var(--toku-orange-soft) !important;
  color: var(--toku-orange) !important;
  border-radius: var(--toku-radius) 0 0 var(--toku-radius);
}
body.skin-toku .info-box-icon .fa,
body.skin-toku .info-box-icon .ion,
body.skin-toku .info-box-icon .glyphicon {
  color: var(--toku-orange) !important;
}

/* Alerts / callouts */
body.skin-toku .callout,
body.skin-toku .alert {
  border-radius: 10px !important;
  border: 1px solid transparent;
  box-shadow: none !important;
}
body.skin-toku .callout.callout-warning,
body.skin-toku .alert-warning {
  background: var(--toku-orange-soft) !important;
  border-color: #fdba74 !important;
  color: #9a3412 !important;
}
body.skin-toku .callout.callout-info,
body.skin-toku .alert-info {
  background: #eff6ff !important;
  border-color: #bfdbfe !important;
  color: #1e3a8a !important;
}
body.skin-toku .callout.callout-danger,
body.skin-toku .alert-danger {
  background: #fef2f2 !important;
  border-color: #fecaca !important;
  color: #991b1b !important;
}
body.skin-toku .callout.callout-success,
body.skin-toku .alert-success {
  background: #f0fdf4 !important;
  border-color: #bbf7d0 !important;
  color: #166534 !important;
}
body.skin-toku .callout a {
  color: inherit !important;
  text-decoration: underline;
  font-weight: 650;
}

/* Empty states */
body.skin-toku .empty,
body.skin-toku .no-result,
body.skin-toku .grid-view .empty {
  text-align: center;
  padding: 48px 20px !important;
  color: var(--toku-muted);
  font-size: 14px;
}
body.skin-toku .empty::before,
body.skin-toku .grid-view .empty::before {
  content: "";
  display: block;
  width: 56px;
  height: 56px;
  margin: 0 auto 14px;
  border-radius: 14px;
  background: var(--toku-orange-soft);
  border: 1px solid #ffedd5;
  box-shadow: inset 0 0 0 10px transparent;
  background-image: radial-gradient(circle at center, var(--toku-orange) 0 5px, transparent 6px);
}

/* Links */
body.skin-toku a {
  color: var(--toku-orange-deep);
}
body.skin-toku a:hover {
  color: var(--toku-orange);
}
body.skin-toku .sidebar-menu > li > a,
body.skin-toku .main-header .navbar .nav > li > a {
  color: inherit;
}

/* Tabs */
body.skin-toku .nav-tabs-custom > .nav-tabs > li.active {
  border-top-color: var(--toku-orange);
}
body.skin-toku .nav-tabs-custom > .nav-tabs > li.active > a {
  color: var(--toku-text);
}
body.skin-toku .nav-tabs > li > a {
  color: var(--toku-muted);
  border-radius: 8px 8px 0 0;
}

/* Dropdown */
body.skin-toku .dropdown-menu {
  border: 1px solid var(--toku-border);
  border-radius: 10px;
  box-shadow: 0 12px 32px rgba(24, 24, 27, 0.1);
  padding: 6px;
}
body.skin-toku .dropdown-menu > li > a {
  border-radius: 7px;
  color: var(--toku-text);
  padding: 8px 12px;
}
body.skin-toku .dropdown-menu > li > a:hover {
  background: var(--toku-orange-soft);
  color: var(--toku-orange-deep);
}

/* Progress / labels */
body.skin-toku .progress-bar-primary,
body.skin-toku .progress-bar-aqua,
body.skin-toku .bg-aqua,
body.skin-toku .bg-light-blue,
body.skin-toku .label-primary,
body.skin-toku .label-info,
body.skin-toku .badge.bg-aqua,
body.skin-toku .badge.bg-light-blue {
  background-color: var(--toku-orange) !important;
}

/* Login page — balanced corporate split */
body.skin-toku.login-page,
body.skin-toku.register-page {
  background:
    radial-gradient(1200px 600px at 85% 20%, #ffedd5 0%, transparent 55%),
    linear-gradient(180deg, #fffaf5 0%, #f4f4f5 48%, #f4f4f5 100%) !important;
}
body.skin-toku .login-logo a,
body.skin-toku .register-logo a {
  color: var(--toku-orange) !important;
  font-weight: 800;
  letter-spacing: -0.04em;
  font-size: 34px;
}
body.skin-toku .login-box,
body.skin-toku .register-box {
  width: 400px;
  max-width: calc(100% - 24px);
}
body.skin-toku .login-box-body,
body.skin-toku .register-box-body {
  background: #fff !important;
  border: 1px solid var(--toku-border);
  border-radius: 14px;
  color: var(--toku-text);
  box-shadow: 0 10px 30px rgba(24, 24, 27, 0.06);
  padding: 28px 26px 24px !important;
}
body.skin-toku .login-box-msg,
body.skin-toku .register-box-msg {
  color: var(--toku-muted);
  margin-bottom: 18px;
  font-size: 14px;
}
body.skin-toku .login-box-body .form-control-feedback,
body.skin-toku .register-box-body .form-control-feedback {
  color: var(--toku-orange);
}
body.skin-toku.login-page .login-flex,
body.skin-toku.register-page .login-flex {
  align-items: center;
}
@media (min-width: 992px) {
  body.skin-toku.login-page .login-box,
  body.skin-toku.register-page .register-box {
    margin-top: 8vh;
  }
}

/* Content spacing */
body.skin-toku .content {
  padding: 12px 20px 28px;
}

/* Options gear buttons */
body.skin-toku .btn-group .btn-primary.btn-flat,
body.skin-toku a.btn.btn-primary.btn-flat {
  min-width: 34px;
}
