/* Orland Dashboard UI — Purple theme (Bootstrap 5 + FontAwesome) */

:root{
  --orland-primary:#6D28D9; /* purple */
  --orland-primary-2:#8B5CF6;
  --orland-bg:#0b1020;
  --orland-card:#0f1733;
  --orland-card-2:#111b3d;
  --orland-border:rgba(255,255,255,.08);
  --orland-muted:rgba(255,255,255,.65);
  --orland-text:#eaf0ff;
  --orland-shadow: 0 14px 40px rgba(0,0,0,.35);
}

html,body{height:100%}
body{
  background:
    radial-gradient(1200px 600px at 15% 10%, rgba(109,40,217,.35), transparent 60%),
    radial-gradient(1000px 600px at 85% 15%, rgba(139,92,246,.25), transparent 60%),
    radial-gradient(900px 500px at 50% 90%, rgba(109,40,217,.15), transparent 60%),
    linear-gradient(180deg, #070a14, #0b1020 40%, #070a14);
  color:var(--orland-text);
}

a{color:inherit}
.small-muted{color:var(--orland-muted)}

.orland-card{
  background: linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03));
  border:1px solid var(--orland-border);
  border-radius: 18px;
  box-shadow: var(--orland-shadow);
  backdrop-filter: blur(10px);
}

.orland-btn{
  background: linear-gradient(135deg, var(--orland-primary), var(--orland-primary-2));
  border:0;
  border-radius: 14px;
  padding: 10px 14px;
  font-weight: 700;
  color:white;
  transition: transform .15s ease, filter .15s ease;
}
.orland-btn:hover{ transform: translateY(-1px); filter: brightness(1.08); }
.orland-btn:active{ transform: translateY(0px); filter: brightness(.98); }

.orland-btn-ghost{
  background: rgba(255,255,255,.06);
  border:1px solid var(--orland-border);
  border-radius: 14px;
  padding: 10px 14px;
  font-weight: 700;
  color: var(--orland-text);
  transition: transform .15s ease, background .15s ease;
  text-decoration:none;
}
.orland-btn-ghost:hover{ transform: translateY(-1px); background: rgba(255,255,255,.09); }

.orland-input{
  background: rgba(255,255,255,.06) !important;
  border:1px solid var(--orland-border) !important;
  color: var(--orland-text) !important;
  border-radius: 14px !important;
}
.orland-input::placeholder{ color: rgba(255,255,255,.45) }

/* Layout */
.shell{display:flex; min-height:100vh}
.sidebar{
  width: 280px;
  padding: 16px;
  position: sticky;
  top: 0;
  height: 100vh;
}
.content{flex:1; padding: 18px;}

.brand{
  display:flex; align-items:center; gap:10px;
  font-weight: 900; letter-spacing:.4px;
}
.brand .logo{
  width:40px;height:40px;border-radius:14px;
  background: linear-gradient(135deg, var(--orland-primary), var(--orland-primary-2));
  display:grid; place-items:center;
  box-shadow: 0 10px 30px rgba(109,40,217,.35);
}

.nav-item{
  display:flex; align-items:center; gap:10px;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid transparent;
  color: rgba(255,255,255,.86);
  text-decoration: none;
  transition: transform .15s ease, background .15s ease, border-color .15s ease;
}
.nav-item:hover{
  background: rgba(255,255,255,.06);
  border-color: var(--orland-border);
  transform: translateY(-1px);
}
.nav-item.active{
  background: rgba(109,40,217,.18);
  border-color: rgba(109,40,217,.35);
}

.topbar{
  display:flex; align-items:center; justify-content:space-between;
  gap: 12px;
  margin-bottom: 12px;
}
.avatar{
  width: 40px; height: 40px; border-radius: 999px;
  border: 1px solid var(--orland-border);
  background: rgba(255,255,255,.06);
}

.kpi{
  padding: 14px;
  border-radius: 18px;
  border: 1px solid var(--orland-border);
  background: rgba(255,255,255,.04);
  transition: transform .15s ease, background .15s ease;
}
.kpi:hover{ transform: translateY(-2px); background: rgba(255,255,255,.06); }

.table-darkish{
  color: var(--orland-text);
  background: rgba(255,255,255,.03);
  border-color: var(--orland-border);
}
.table-darkish th, .table-darkish td{
  border-color: var(--orland-border) !important;
}

.toast-host{
  position: fixed;
  right: 14px;
  bottom: 14px;
  display:flex;
  flex-direction:column;
  gap:10px;
  z-index: 9999;
}
.toast-item{
  background: rgba(15,23,51,.92);
  border: 1px solid var(--orland-border);
  border-radius: 16px;
  padding: 10px 12px;
  min-width: 220px;
  box-shadow: var(--orland-shadow);
}

@media (max-width: 992px){
  .sidebar{ position: fixed; left: -290px; transition:left .2s ease; z-index: 50; }
  .sidebar.open{ left: 0; }
  .content{ padding: 14px; }
  .shell{ display:block; }
}
