:root{--glass:rgba(18,27,52,.68);--line:rgba(255,255,255,.12);--text:#edf3ff}body{background:radial-gradient(circle at top left,#1c3d68,transparent 34%),radial-gradient(circle at bottom right,#5d2c72,transparent 30%),#09111f;color:var(--text);min-height:100vh}.app-shell{display:flex}.sidebar{width:260px;min-height:100vh;padding:20px;position:sticky;top:0;background:rgba(7,13,27,.72);backdrop-filter:blur(22px);border-right:1px solid var(--line)}.sidebar a{display:block;color:#c8d5e8;text-decoration:none;padding:10px 12px;border-radius:12px;margin:3px 0}.sidebar a:hover{background:rgba(255,255,255,.08);color:#fff}.brand{display:flex!important;gap:10px;align-items:center;margin-bottom:20px}.brand small,.nav-label{display:block;font-size:10px;letter-spacing:1px;color:#7f91ad}.brand-icon{background:linear-gradient(135deg,#5b8cff,#b96cff);padding:10px;border-radius:12px}.main-content{flex:1;min-width:0}.topbar{padding:18px 28px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);background:rgba(9,17,31,.55);backdrop-filter:blur(20px)}.glass-panel,.form-card{background:var(--glass);border:1px solid var(--line);border-radius:22px;backdrop-filter:blur(18px);box-shadow:0 20px 50px rgba(0,0,0,.2)}.master-card{display:flex;flex-direction:column;gap:8px;padding:22px;border-radius:18px;background:rgba(255,255,255,.055);border:1px solid var(--line);text-decoration:none;color:#3f6ba8;transition:.2s}.master-card:hover{transform:translateY(-4px);background:rgba(255,255,255,.1);color:#fff}.master-card i{font-size:22px;color:#8bb4ff}.master-card small{color:#15171b}.form-card{padding:22px}.form-control,.form-select{background:rgba(255,255,255,.08);border-color:var(--line);color:#fff}.form-control:focus,.form-select:focus{background:rgba(255,255,255,.12);color:#fff}.table{color:#dbe7f6}.table-hover>tbody>tr:hover>*{color:#fff}.table td,.table th{border-color:var(--line)}.search-box{max-width:320px}.btn-primary{background:linear-gradient(135deg,#5b8cff,#a66cff);border:0}.text-muted{color:#9cacc1!important}@media(max-width:900px){.sidebar{display:none}.topbar{padding:16px}.container-fluid{padding:16px!important}}


/* GEMM v3 Blue • Pink • Cyan Modern Theme */
:root{
  --gemm-blue:#2563eb;
  --gemm-blue-dark:#172554;
  --gemm-pink:#ec4899;
  --gemm-cyan:#06b6d4;
  --gemm-cyan-light:#67e8f9;
  --gemm-bg:#f5f8ff;
  --gemm-card:rgba(255,255,255,.88);
  --gemm-text:#172554;
}
body{background:linear-gradient(135deg,#eff6ff 0%,#fdf2f8 48%,#ecfeff 100%);color:var(--gemm-text)}
.sidebar,.app-sidebar{background:linear-gradient(180deg,var(--gemm-blue-dark),#1d4ed8 48%,#0e7490)!important}
.sidebar .nav-link.active,.app-sidebar .nav-link.active{
 background:linear-gradient(90deg,var(--gemm-pink),var(--gemm-cyan))!important;
 color:#fff!important;border-radius:12px;box-shadow:0 8px 24px rgba(236,72,153,.25)
}
.sidebar .nav-link:hover,.app-sidebar .nav-link:hover{background:rgba(255,255,255,.12)!important;border-radius:12px}
.card,.stat-card,.content-card{
 background:var(--gemm-card)!important;border:1px solid rgba(6,182,212,.14)!important;
 border-radius:18px!important;box-shadow:0 12px 35px rgba(37,99,235,.09)!important;
 backdrop-filter:blur(14px)
}
.card-header{background:linear-gradient(90deg,rgba(37,99,235,.07),rgba(236,72,153,.06),rgba(6,182,212,.07))!important;border-bottom:1px solid rgba(37,99,235,.08)!important}
.btn-primary{background:linear-gradient(90deg,var(--gemm-blue),var(--gemm-cyan))!important;border:none!important}
.btn-success,.btn-info{background:linear-gradient(90deg,var(--gemm-cyan),var(--gemm-blue))!important;border:none!important}
.btn-danger{background:linear-gradient(90deg,var(--gemm-pink),#f43f5e)!important;border:none!important}
.btn-outline-primary{border-color:var(--gemm-cyan)!important;color:var(--gemm-blue)!important}
.btn-outline-primary:hover{background:linear-gradient(90deg,var(--gemm-blue),var(--gemm-cyan))!important;color:#fff!important}
.badge-primary,.bg-primary{background:linear-gradient(90deg,var(--gemm-blue),var(--gemm-cyan))!important}
.badge-info,.bg-info{background:linear-gradient(90deg,var(--gemm-cyan),var(--gemm-pink))!important}
.table thead th{background:linear-gradient(90deg,#eff6ff,#ecfeff,#fdf2f8)!important;color:var(--gemm-blue-dark)!important}
.form-control:focus,.form-select:focus{border-color:var(--gemm-cyan)!important;box-shadow:0 0 0 .22rem rgba(6,182,212,.16)!important}
.page-title,.section-title{background:linear-gradient(90deg,var(--gemm-blue),var(--gemm-pink),var(--gemm-cyan));-webkit-background-clip:text;background-clip:text;color:transparent}
.topbar,.navbar{background:rgba(255,255,255,.82)!important;backdrop-filter:blur(14px)}

/* Cyan outline for every data-entry field */
input.form-control, select.form-select, textarea.form-control,
input[type="text"], input[type="email"], input[type="tel"], input[type="number"],
input[type="date"], input[type="password"], input[type="search"], textarea, select{
  border:1.5px solid var(--gemm-cyan)!important;
  outline:none!important;
}
input.form-control:hover, select.form-select:hover, textarea.form-control:hover,
input:hover, select:hover, textarea:hover{
  border-color:var(--gemm-cyan-light)!important;
}
input.form-control:focus, select.form-select:focus, textarea.form-control:focus,
input:focus, select:focus, textarea:focus{
  border:2px solid var(--gemm-cyan)!important;
  box-shadow:0 0 0 .22rem rgba(6,182,212,.18)!important;
}
input[readonly], input:disabled, select:disabled, textarea:disabled{
  border-color:rgba(6,182,212,.45)!important;
}
.form-control,
.form-select,
textarea.form-control {
    border: 1.5px solid #00d9ff !important;
    color: #1b1f3b !important;
}

.form-control:focus,
.form-select:focus,
textarea.form-control:focus {
    border-color: #b6bcbc !important;
    box-shadow: 0 0 0 0.2rem rgba(0, 217, 255, 0.18) !important;
    outline: none !important;
}
/* Split sidebar: fixed logo + independently scrollable navigation */
.sidebar{padding:0!important;display:flex!important;flex-direction:column!important;height:100vh!important;overflow:hidden!important}
.sidebar-logo{height:86px;min-height:86px;display:flex;align-items:center;justify-content:center;border-bottom:1px solid rgba(103,232,249,.35);background:linear-gradient(135deg,#172554,#2563eb,#06b6d4);position:relative;z-index:2}
.logo-link{margin:0!important;padding:0!important;background:transparent!important;display:flex!important;align-items:center;justify-content:center}
.logo-mark{width:52px;height:52px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:#fff;color:#172554;font-size:26px;font-weight:800;box-shadow:0 8px 24px rgba(0,0,0,.18)}
.sidebar-nav{flex:1;overflow-y:auto;overflow-x:hidden;padding:16px 14px 28px}
.sidebar-nav::-webkit-scrollbar{width:6px}.sidebar-nav::-webkit-scrollbar-thumb{background:rgba(103,232,249,.55);border-radius:8px}
.sidebar-nav a{color:#eefbff!important}
.sidebar-nav .nav-label{margin:12px 10px 6px;color:#a5f3fc!important}
.sidebar-nav a:hover{background:rgba(255,255,255,.14)!important}
.sidebar-nav a i{color:#67e8f9}
.sidebar-nav a:first-of-type{margin-top:0}
@media(max-width:900px){.sidebar{height:auto!important}.sidebar-logo{height:72px;min-height:72px}.sidebar-nav{overflow:visible!important}}
/* Contrast safety */
body,.main-content{color:#172554!important}
.card,.form-card,.glass-panel,.content-card{color:#172554!important}
.form-control,.form-select,textarea.form-control{background:#fff!important;color:#172554!important;border:1.5px solid #06b6d4!important}
.form-control::placeholder{color:#64748b!important;opacity:1}
.form-select option{background:#fff;color:#172554}
.table{color:#172554!important}.table td,.table th{color:#172554!important}
.text-muted{color:#64748b!important}
