.vp2026-wrap{width:100%;min-height:100vh;overflow:hidden;border:1px solid #ccd0d4;border-radius:10px;background:#eef3ee}
.vp2026-frame{display:block;width:100%;min-height:100vh;border:0}
.vp2026-shell-grid{max-width:1200px;margin:18px auto 28px;display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px}
.vp2026-shell-card{margin:0}
.vp2026-card{max-width:1080px;margin:16px 0;padding:20px;border:1px solid #ccd0d4;border-radius:12px;background:#fff;box-sizing:border-box}
.vp2026-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}
.vp2026-card-head h2{margin:0}
.vp2026-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;align-items:start}
.vp2026-form-stack{display:flex;flex-direction:column;gap:12px}
.vp2026-form-stack input[type="text"],.vp2026-form-stack input[type="email"],.vp2026-form-stack input[type="password"],.vp2026-form-stack select,.vp2026-form-stack textarea,.vp2026-card input[type="text"],.vp2026-card input[type="email"],.vp2026-card input[type="password"],.vp2026-card select,.vp2026-card textarea{width:100%;max-width:100%;box-sizing:border-box}
.vp2026-permission-block{padding-top:14px;border-top:1px solid #e2e8e2}
.vp2026-permissions{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px 16px;margin:12px 0 20px}
.vp2026-permissions label{display:block;padding:10px 12px;border:1px solid #dde6dd;border-radius:12px;background:#f8fbf8;overflow-wrap:anywhere}
.vp2026-permissions input[type="checkbox"]{margin-right:8px}
.vp2026-list-stack{display:flex;flex-direction:column;gap:12px}
.vp2026-list-item{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;border:1px solid #dfe8df;border-radius:14px;background:#f8fbf8}
.vp2026-list-item strong{display:block;margin-bottom:4px}
.vp2026-list-item span,.vp2026-list-item time{display:block;color:#50575e;font-size:12px}
.vp2026-list-item p{margin:8px 0 0}
.vp2026-online-pill{padding:6px 10px;border-radius:999px;background:#e6f6ea;color:#17663b;font-weight:700}
.vp2026-log-badge{padding:6px 10px;border-radius:999px;background:#edf2ff;color:#2646a3;font-weight:700;text-transform:uppercase}
.vp2026-empty{margin:0;color:#6b7280}
.vp2026-message-item time{white-space:nowrap}
.vp2026-user-card{margin:16px 0;padding:18px;border:1px solid #dcdcde;border-radius:12px;background:#fafafa}
.vp2026-user-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px}
.vp2026-inline-form{margin:12px 0 18px}
.vp2026-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;max-width:1200px;margin:16px auto;padding:14px 18px;border:1px solid #ccd0d4;border-radius:12px;background:#fff}
.vp2026-toolbar span{display:block;color:#50575e;font-size:13px}
.vp2026-toolbar-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.vp2026-toolbar .button,.vp2026-toolbar button{min-height:40px;padding:0 16px;border-radius:10px;border:1px solid #0d2b1a!important;background:#0d2b1a!important;color:#fff!important;box-shadow:none!important}
.vp2026-toolbar .button:hover,.vp2026-toolbar button:hover{background:#1a5c38!important;border-color:#1a5c38!important}
.vp2026-logout-button{min-height:34px!important;padding:0 12px!important;border-radius:999px!important;font-size:12px!important}
.vp2026-reset-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.vp2026-reset-row form{margin:0}
.vp2026-reset-row .button{min-height:36px}
.vp2026-login-page,.vp2026-route-page{background:radial-gradient(circle at top left,rgba(201,162,39,.18),transparent 28%),radial-gradient(circle at bottom right,rgba(45,138,87,.20),transparent 32%),linear-gradient(135deg,#f1f6f1 0%,#e4efe5 45%,#edf5ed 100%)}
.vp2026-login-shell{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px}
.vp2026-login-card{width:100%;max-width:980px;padding:32px;border:1px solid rgba(26,92,56,.12);border-radius:24px;background:rgba(255,255,255,.92);box-shadow:0 22px 60px rgba(18,28,39,.12);backdrop-filter:blur(8px)}
.vp2026-login-hero{display:flex;align-items:center;gap:18px;margin-bottom:22px}
.vp2026-login-badge{width:72px;height:72px;border-radius:18px;background:linear-gradient(135deg,#c9a227,#f0c040);color:#102016;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:800}
.vp2026-login-card h1{margin:0 0 8px;font-size:34px;line-height:1.05;color:#0d2b1a}
.vp2026-login-panels{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.vp2026-login-panel{padding:20px;border:1px solid rgba(26,92,56,.12);border-radius:18px;background:linear-gradient(180deg,#fff,#f5faf5)}
.vp2026-login-panel-alt{background:linear-gradient(180deg,#fffdf6,#f7f4e9);border-color:rgba(201,162,39,.2)}
.vp2026-login-panel h2{margin:0 0 10px;color:#0d2b1a}
.vp2026-login-card input[type="text"],.vp2026-login-card input[type="password"]{min-height:44px;border-radius:12px;border:1px solid #cddbcc;padding:10px 12px;background:#fff}
.vp2026-message{margin:12px 0 16px;padding:12px 14px;border-radius:8px}
.vp2026-message-info{background:#eef6ff;color:#0a4b78}
.vp2026-message-success{background:#edf9ef;color:#155724}
.vp2026-message-error{background:#fdecec;color:#8a1f11}
.vp2026-locked{outline:1px solid #e5c2c2;box-shadow:inset 0 0 0 9999px rgba(255,247,247,.12)}
@media (max-width:780px){.vp2026-login-card{padding:22px;border-radius:20px}.vp2026-login-panels{grid-template-columns:1fr}}
@media (max-width:782px){.vp2026-card,.vp2026-user-card{padding:16px}.vp2026-user-head{flex-direction:column;align-items:flex-start}.vp2026-toolbar-actions{width:100%}}
