
/* KEYSECURE — Strawberry × Matcha Design System */
:root{
  --ks-strawberry:#E85D75;
  --ks-strawberry-dark:#D94C67;
  --ks-strawberry-light:#FFF0F3;
  --ks-matcha:#6B8E5A;
  --ks-matcha-dark:#4F6F45;
  --ks-matcha-light:#F1F7ED;
  --ks-cream:#FFFDF9;
  --ks-bg:#FFF8F5;
  --ks-text:#3B3B3B;
  --ks-muted:#8A837B;
  --ks-border:#EEE8E2;
  --ks-shadow:0 12px 35px rgba(71,61,52,.08);
}
*{box-sizing:border-box}
body{
  color:var(--ks-text)!important;

  background-image:url('../bgdashboard/BG.jpg')!important;
  background-position:center center!important;
  background-size:cover!important;
  background-repeat:no-repeat!important;
  background-attachment:fixed!important;

  min-height:100vh;
}
a{transition:.2s ease}
.sidebar{
  background:linear-gradient(180deg,#536F49 0%,#405B38 100%)!important;
  box-shadow:7px 0 28px rgba(64,91,56,.13)!important;
}
.sidebar a{
  border-radius:14px!important;
  margin:4px 0!important;
}
.sidebar a:hover{background:rgba(255,255,255,.11)!important}
.sidebar a.active{
  background:linear-gradient(135deg,var(--ks-strawberry),var(--ks-strawberry-dark))!important;
  box-shadow:0 8px 18px rgba(232,93,117,.22)!important;
}
.main{background:transparent!important}
.topbar{
  border-bottom:1px solid rgba(238,232,226,.8)!important;
  background:rgba(255,253,249,.76)!important;
  backdrop-filter:blur(12px);
}
.page-title h2{font-weight:800!important;letter-spacing:-.4px}
.card,.main-card,.summary-card,.login-card,.owner-card,.table-card{
  border:1px solid var(--ks-border)!important;
  box-shadow:var(--ks-shadow)!important;
  border-radius:22px!important;
}
.btn-primary,.btn-danger,.login-btn,.add-btn{
  background:linear-gradient(135deg,var(--ks-strawberry),var(--ks-strawberry-dark))!important;
  border-color:transparent!important;
  border-radius:12px!important;
  box-shadow:0 8px 18px rgba(232,93,117,.18);
}
.btn-success,.save-btn,.save{
  background:linear-gradient(135deg,var(--ks-matcha),var(--ks-matcha-dark))!important;
  border-color:transparent!important;
  border-radius:12px!important;
  box-shadow:0 8px 18px rgba(107,142,90,.16);
}
.form-control,.form-select{
  border-color:var(--ks-border)!important;
  border-radius:12px!important;
  background:#fff!important;
}
.form-control:focus,.form-select:focus{
  border-color:var(--ks-strawberry)!important;
  box-shadow:0 0 0 4px rgba(232,93,117,.10)!important;
}
.table{
  --bs-table-bg:transparent;
}
.table thead th{
  color:var(--ks-muted)!important;
  font-size:11px!important;
  text-transform:uppercase;
  letter-spacing:.5px;
  border-bottom-color:var(--ks-border)!important;
}
.badge-granted,.status-granted{
  background:var(--ks-matcha-light)!important;color:var(--ks-matcha-dark)!important;
}
.badge-denied,.status-denied{
  background:var(--ks-strawberry-light)!important;color:var(--ks-strawberry-dark)!important;
}
@media(max-width:900px){
  .sidebar{width:210px!important}
  .main{margin-left:210px!important}
}
@media(max-width:700px){
  .sidebar{width:72px!important;padding:18px 10px!important}
  .sidebar .logo-text,.sidebar .logo-emoji,.sidebar-title,.sidebar a span{display:none!important}
  .sidebar .logo{justify-content:center;padding:4px 0 20px}
  .sidebar a{justify-content:center;padding:12px!important}
  .main{margin-left:72px!important;padding:18px!important}
  .topbar{padding:15px!important}
}
