:root {
    --pms-navy: #10233e;
    --pms-navy-2: #163154;
    --pms-accent: #1aa6a6;
    --pms-accent-2: #127c7c;
    --pms-bg: #f3f6fa;
    --pms-text: #1d2b3a;
    --sidebar-width: 260px;
}
body { background: var(--pms-bg); color: var(--pms-text); font-family: "Segoe UI", Tahoma, sans-serif; }
.pms-sidebar { width: var(--sidebar-width); min-height: 100vh; background: linear-gradient(180deg, var(--pms-navy), var(--pms-navy-2)); color: #dbe7f3; position: fixed; inset: 0 auto 0 0; overflow-y: auto; z-index: 20; }
.pms-brand { padding: 1.1rem 1.2rem; border-bottom: 1px solid rgba(255,255,255,.08); font-weight: 700; color: #fff; display: block; text-decoration: none; }
.pms-brand small { display: block; font-weight: 400; color: #9fb3c8; }
.pms-nav { padding: .8rem 0 2rem; }
.pms-nav .nav-label { padding: .8rem 1.2rem .3rem; font-size: .72rem; letter-spacing: .08em; text-transform: uppercase; color: #7f97ad; }
.pms-nav a { display: block; color: #d5e4f2; text-decoration: none; padding: .5rem 1.2rem; border-left: 3px solid transparent; }
.pms-nav a:hover, .pms-nav a.active { background: rgba(26,166,166,.16); color: #fff; border-left-color: var(--pms-accent); }
.pms-main { margin-left: var(--sidebar-width); min-height: 100vh; }
.pms-topbar { background: #fff; border-bottom: 1px solid #e4ebf3; padding: .85rem 1.4rem; display: flex; justify-content: space-between; align-items: center; }
.pms-content { padding: 1.4rem; }
.pms-card { background: #fff; border: 1px solid #e4ebf3; border-radius: 12px; box-shadow: 0 8px 24px rgba(16,35,62,.04); }
.pms-card .card-header { background: transparent; border-bottom: 1px solid #eef3f8; font-weight: 600; }
.stat-card { padding: 1rem 1.1rem; }
.stat-card .stat-label { color: #6b7c8f; font-size: .85rem; }
.stat-card .stat-value { font-size: 1.6rem; font-weight: 700; color: var(--pms-navy); }
.btn-pms { background: var(--pms-accent); border-color: var(--pms-accent); color: #fff; }
.btn-pms:hover { background: var(--pms-accent-2); color: #fff; }
.table thead th { color: #5d7186; font-size: .8rem; text-transform: uppercase; letter-spacing: .03em; }
.auth-wrap { min-height: 100vh; display: grid; place-items: center; background: linear-gradient(160deg, #10233e, #1aa6a6); }
.auth-card { width: min(440px, 92vw); background: #fff; border-radius: 16px; padding: 2rem; box-shadow: 0 20px 50px rgba(0,0,0,.18); }
.secret-box { background: #10233e; color: #d7fff6; border-radius: 8px; padding: .8rem 1rem; font-family: Consolas, monospace; word-break: break-all; }
@media (max-width: 991px) {
    .pms-sidebar { position: static; width: 100%; min-height: auto; }
    .pms-main { margin-left: 0; }
}
