/*
 * Antigravity ProgramOps — Custom CSS overrides
 * Sits on top of the Paces Bootstrap theme
 */

:root {
    --po-primary: #4361ee;
    --po-success: #2ec4b6;
    --po-warning: #ff9f43;
    --po-danger:  #ee4043;
    --po-text:    #1a1f36;
}

/* Sharp edges everywhere (enterprise look) */
.card,
.modal-content,
.dropdown-menu,
.btn,
.badge,
.form-control,
.form-select,
.alert,
.progress {
    border-radius: 0 !important;
}

/* Sidebar brand text */
.logo-lg span, .logo-sm span {
    letter-spacing: -0.5px;
}

/* ProgramOps badge helpers */
.badge-soft-success  { background: rgba(40,167,69,.15);  color: #1a7432; }
.badge-soft-warning  { background: rgba(255,193,7,.15);  color: #856404; }
.badge-soft-danger   { background: rgba(220,53,69,.15);  color: #842029; }
.badge-soft-info     { background: rgba(23,162,184,.15); color: #0a6c74; }
.badge-soft-primary  { background: rgba(67,97,238,.15);  color: #2745c7; }
.badge-soft-secondary{ background: rgba(108,117,125,.15);color: #3e4b52; }
.badge-soft-dark     { background: rgba(33,37,41,.15);   color: #1b1e21; }

/* Page content padding */
.page-content {
    padding: 24px;
}

/* Table improvements */
.table th {
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #6c757d;
}

/* Footer */
.footer {
    border-top: 1px solid rgba(0,0,0,.08);
    padding: 16px 24px;
    font-size: 0.813rem;
}

/* KPI card avatar */
.avatar-lg {
    width: 56px;
    height: 56px;
    font-size: 1.4rem;
}
.avatar-md {
    width: 36px;
    height: 36px;
}
.avatar-sm {
    width: 28px;
    height: 28px;
}

/* Auth page background */
.auth-bg {
    /*background: linear-gradient(135deg, #1a1f5e 0%, #4361ee 100%);*/
    background: #fff;
    min-height: 100vh;
}

/* Side nav user area */
.sidenav-user {
    padding: 20px 16px;
    border-bottom: 1px solid rgba(255,255,255,.08);
}

/* Progress bar */
.progress {
    background-color: rgba(0,0,0,.07);
}

/* Code tags  */
code {
    background: rgba(67,97,238,.1);
    color: var(--po-primary);
    padding: 1px 6px;
    font-size: 0.8em;
}



/* ======== CUSTOM WOW & SPLITTING ANIMATIONS ======== */
.splt-txt span {
  display: inline-block;
}
.splt-txt .whitespace {
  width: 8px;
}
.splt-txt.animated .char {
  -webkit-animation: fadeInRight 0.4s cubic-bezier(0.3, 0, 0.7, 1) both;
  animation: fadeInRight 0.4s cubic-bezier(0.3, 0, 0.7, 1) both;
  -webkit-animation-delay: calc(30ms * var(--char-index));
  animation-delay: calc(30ms * var(--char-index));
}
.splt-txt.animated .char:first-child {
  text-transform: capitalize;
}

/* Image Entry Clips */
.imageUpToDown {
  clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
  -webkit-transition: all 0.8s;
  transition: all 0.8s;
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
}
.imageUpToDown.animated { clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }

.imageDownToUP {
  clip-path: polygon(0 100%, 100% 100%, 100% 100%, 0 100%);
  -webkit-transition: all 0.8s;
  transition: all 0.8s;
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
}
.imageDownToUP.animated { clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }

.imageLeftToRight {
  clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
  -webkit-transition: all 0.8s;
  transition: all 0.8s;
  -webkit-transition-delay: 0.3s;
  transition-delay: 0.3s;
}
.imageLeftToRight.animated { clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%); }
