/*
Theme Name: WatchSentra
Theme URI: https://pzsoms.com
Author: PZS
Description: Full-screen application theme for WatchSentra.
Version: 0.4.2
Requires at least: 6.5
Requires PHP: 8.0
Text Domain: pzs-oms
*/
:root{
 --navy:#071a33;--navy2:#0b2547;--blue:#1769e0;--blue2:#0d55bc;
 --bg:#f3f6fa;--white:#fff;--text:#172033;--muted:#6b778c;--line:#dfe5ec;
 --green:#16a36a;--shadow:0 8px 24px rgba(10,31,61,.08)
}
*{box-sizing:border-box}html,body{margin:0;padding:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--text)}
body.admin-bar .oms-app{min-height:calc(100vh - 32px)}
a{text-decoration:none;color:inherit}.oms-app{display:flex;min-height:100vh}
.oms-sidebar{width:270px;background:linear-gradient(180deg,var(--navy),#061426);color:#dce7f5;position:fixed;inset:0 auto 0 0;padding:22px 16px;z-index:20;overflow-y:auto;display:flex;flex-direction:column}
.oms-brand{display:flex;align-items:center;gap:12px;padding:4px 8px 24px;border-bottom:1px solid rgba(255,255,255,.1)}
.oms-brand img{width:48px;height:48px;object-fit:contain;background:#fff;border-radius:10px;padding:3px}
.oms-brandmark{width:48px;height:48px;border-radius:10px;background:var(--blue);display:grid;place-items:center;font-weight:800;color:#fff}
.oms-brand strong{display:block;color:#fff;font-size:17px}.oms-brand small{color:#8fa6c4}
.oms-nav{padding-top:18px;flex:1}.oms-nav a{display:flex;align-items:center;gap:12px;padding:12px 14px;margin:5px 0;border-radius:9px;color:#c9d6e7;font-size:14px}
.oms-nav a:hover,.oms-nav a.active{background:var(--blue);color:#fff}.oms-nav .dashicons{font-size:19px;width:20px;height:20px}
.oms-nav-title{padding:18px 14px 5px;font-size:11px;letter-spacing:1.3px;color:#7188a5;font-weight:700}
.oms-main{margin-left:270px;width:calc(100% - 270px);min-height:100vh}
.oms-topbar{height:74px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:sticky;top:0;z-index:10}
.admin-bar .oms-topbar{top:32px}.oms-top-left{display:flex;align-items:center;gap:14px}.oms-menu-btn{display:none;border:0;background:transparent;font-size:25px;cursor:pointer}
.oms-page-title strong{display:block;font-size:18px}.oms-page-title small{color:var(--muted)}
.oms-user{display:flex;align-items:center;gap:10px}.oms-avatar{width:38px;height:38px;border-radius:50%;background:#e8eef7;display:grid;place-items:center;font-weight:700;color:var(--navy)}
.oms-user small{display:block;color:var(--muted)}.oms-content{padding:28px}
.oms-welcome{background:linear-gradient(120deg,var(--navy2),var(--blue2));color:#fff;border-radius:16px;padding:26px 28px;box-shadow:var(--shadow);display:flex;justify-content:space-between;gap:20px;align-items:center}
.oms-welcome h1{margin:0 0 7px;font-size:27px}.oms-welcome p{margin:0;color:#d9e7fa}.oms-status{background:rgba(255,255,255,.12);padding:10px 14px;border-radius:20px;white-space:nowrap}
.oms-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:22px 0}
.oms-stat,.oms-panel{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}
.oms-stat{padding:20px}.oms-stat-head{display:flex;justify-content:space-between;align-items:center;color:var(--muted);font-size:13px}.oms-stat .dashicons{color:var(--blue)}
.oms-stat strong{display:block;font-size:27px;margin-top:10px}.oms-stat small{color:var(--green)}
.oms-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:18px}.oms-panel{padding:22px}.oms-panel h2{margin:0 0 17px;font-size:17px}
.oms-module{text-decoration:none;color:inherit}.oms-module:hover{border-color:#1769e0;background:#f5f9ff}
.oms-modules{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.oms-module{border:1px solid var(--line);border-radius:11px;padding:15px;background:#fbfcfe}
.oms-module .dashicons{color:var(--blue);margin-bottom:8px}.oms-module strong{display:block;font-size:13px}.oms-module small{color:var(--muted)}
.oms-activity{padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.oms-activity:last-child{border:0}.oms-activity span{display:block;color:var(--muted);margin-top:4px}
.oms-overlay{display:none}
.oms-sidebar-footer{margin-top:20px;padding-top:14px;border-top:1px solid rgba(255,255,255,.12)}.oms-logout{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:9px;color:#fecaca;background:rgba(220,38,38,.12)}.oms-logout:hover{background:#dc2626;color:#fff}.oms-logout .dashicons{font-size:20px;width:20px;height:20px}.oms-logout strong,.oms-logout small{display:block}.oms-logout small{font-size:11px;margin-top:2px;opacity:.75}
@media(max-width:1100px){.oms-stats{grid-template-columns:repeat(2,1fr)}.oms-modules{grid-template-columns:repeat(2,1fr)}}
@media(max-width:800px){body.admin-bar .oms-app{min-height:100vh}.admin-bar .oms-topbar{top:46px}.oms-sidebar{transform:translateX(-100%);transition:.25s}.oms-sidebar.open{transform:none}.oms-main{margin-left:0;width:100%}.oms-menu-btn{display:block}.oms-grid{grid-template-columns:1fr}.oms-overlay.show{display:block;position:fixed;inset:0;background:rgba(0,0,0,.35);z-index:15}.oms-user-info{display:none}}
@media(max-width:650px){body.pzs-staff-user .oms-sidebar,body.pzs-staff-user .oms-topbar,body.pzs-staff-user .oms-overlay{display:none!important}body.pzs-staff-user .oms-main{margin:0;width:100%;background:#eef3f9}body.pzs-staff-user .oms-content{padding:0 0 82px;max-width:none}body.pzs-staff-user .oms-panel{border:0;border-radius:0;box-shadow:none}}
body.pzs-field-staff .oms-app{display:block;min-height:100vh;background:#eef3f9}body.pzs-field-staff .oms-main{width:100%!important;margin-left:0!important;background:#eef3f9}body.pzs-field-staff .oms-content{width:100%;max-width:none}body.pzs-field-staff .oms-sidebar,body.pzs-field-staff .oms-topbar,body.pzs-field-staff .oms-overlay{display:none!important}
body.pzs-field-staff .pzs-staff-bottom-nav,body.pzs-field-staff .pzs-patrol-bottom-nav,body.pzs-field-staff .pzs-mobile-scanner-footer,.pzs-field-footer{position:fixed!important;right:0;bottom:0;left:0;z-index:9999;display:grid!important;grid-template-columns:1fr 1fr 68px 1fr 1fr;align-items:end;padding:7px 5px calc(7px + env(safe-area-inset-bottom));border-top:1px solid #dbe4ef;background:rgba(255,255,255,.97);box-shadow:0 -8px 24px rgba(7,26,51,.11);backdrop-filter:blur(15px)}
.pzs-field-footer a{display:grid;justify-items:center;gap:2px;padding:4px 2px;color:#718096;font-size:10px;font-weight:800;text-decoration:none}.pzs-field-footer a>span{font-size:20px;line-height:1}.pzs-field-footer .pzs-field-gps{display:grid;place-items:center;align-self:center;width:62px;height:62px;margin:-28px auto -3px;padding:0;border:4px solid #fff;border-radius:50%;background:#dc2626;color:#fff;font-size:12px;box-shadow:0 5px 15px rgba(7,26,51,.24)}
body.pzs-field-staff .oms-content{padding-bottom:92px!important}
@media(max-width:520px){.oms-content{padding:17px}.oms-topbar{padding:0 16px}.oms-stats{grid-template-columns:1fr}.oms-modules{grid-template-columns:1fr}.oms-welcome{align-items:flex-start;flex-direction:column}.oms-welcome h1{font-size:22px}}

body.oms-login-body{min-height:100vh;background:radial-gradient(circle at 14% 18%,rgba(23,105,224,.8),transparent 34%),radial-gradient(circle at 86% 78%,rgba(13,85,188,.65),transparent 30%),linear-gradient(145deg,#061426 0%,#071a33 43%,#0b2f61 100%);color:#172033}
.oms-login-page{min-height:100vh;display:grid;place-items:center;padding:32px 20px;position:relative;overflow:hidden}
.oms-login-page:before,.oms-login-page:after{content:"";position:fixed;border-radius:50%;background:rgba(255,255,255,.09);pointer-events:none}
.oms-login-page:before{width:380px;height:380px;left:-130px;bottom:-160px}.oms-login-page:after{width:290px;height:290px;right:-90px;top:-100px}
.oms-login-card{width:min(980px,100%);min-height:590px;display:grid;grid-template-columns:1.05fr .95fr;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.3);border-radius:24px;overflow:hidden;box-shadow:0 28px 80px rgba(1,18,40,.48),inset 0 1px 0 rgba(255,255,255,.22);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);position:relative;z-index:1}
.oms-login-brand{padding:48px 46px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;background-image:linear-gradient(180deg,rgba(3,17,35,.68),rgba(5,30,61,.84)),url('assets/login-control-room.jpg');background-size:cover;background-position:center;border-right:1px solid rgba(255,255,255,.2);position:relative;overflow:hidden}
.oms-login-brand:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(7,26,51,.18),rgba(23,105,224,.16));pointer-events:none}
.oms-login-brand>*{position:relative;z-index:1}
.oms-login-logo{width:158px;height:158px;object-fit:contain;border-radius:50%;padding:8px;background:rgba(255,255,255,.96);border:1px solid rgba(255,255,255,.78);box-shadow:0 14px 38px rgba(2,18,40,.45);margin:0 auto 22px}
.oms-login-fallback{width:148px;height:148px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.96);color:#0b4f98;font-size:34px;font-weight:900;margin:0 auto 22px}
.oms-login-brand h1{font-size:40px;line-height:1.08;margin:0 0 12px;letter-spacing:0;text-shadow:0 3px 18px rgba(0,0,0,.55)}.watchsentral-wordmark span{display:inline;letter-spacing:-.7px;-webkit-text-stroke:1px rgba(255,255,255,.96);paint-order:stroke fill;text-shadow:0 2px 10px rgba(0,0,0,.42)}.watchsentral-wordmark .word-watch{color:#082b62}.watchsentral-wordmark .word-sentral{color:#2f8eef}.oms-login-brand h2{font-size:20px;margin:0 0 18px;letter-spacing:1.6px;text-shadow:0 2px 12px rgba(0,0,0,.55)}.oms-login-brand p{max-width:440px;margin:0 0 12px;color:#fff;line-height:1.6;text-shadow:0 2px 10px rgba(0,0,0,.82)}.oms-login-tagline{font-size:16px;font-weight:800;letter-spacing:.4px}.oms-login-owned{font-size:13px;font-weight:650}
.oms-login-form-panel{padding:64px 58px;display:flex;flex-direction:column;justify-content:center;background:rgba(255,255,255,.88);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.oms-login-form-panel h2{font-size:32px;margin:0 0 8px;color:#071a33}.oms-login-intro{margin:0 0 28px;color:#6b778c}
.oms-login-alert{padding:12px 14px;margin-bottom:18px;border:1px solid #fecaca;border-radius:9px;background:#fff1f2;color:#b91c1c;font-size:14px}
.oms-login-field{display:block;margin-bottom:17px;font-weight:700;font-size:13px}.oms-login-field input{display:block;width:100%;height:50px;margin-top:7px;padding:0 15px;border:1px solid rgba(148,163,184,.48);border-radius:10px;background:rgba(255,255,255,.66);box-shadow:inset 0 1px 0 rgba(255,255,255,.8);color:#172033;font:inherit;outline:none}.oms-login-field input:focus{border-color:#1769e0;box-shadow:0 0 0 3px rgba(23,105,224,.12),inset 0 1px 0 #fff;background:rgba(255,255,255,.92)}
.oms-password-wrap{position:relative}.oms-password-wrap input{padding-right:72px}.oms-password-toggle{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#1769e0;font-weight:800;font-size:11px;cursor:pointer}
.oms-login-options{display:flex;align-items:center;justify-content:space-between;gap:15px;margin:3px 0 22px;font-size:13px}.oms-login-options label{display:flex;align-items:center;gap:7px}.oms-login-options a{color:#1769e0;font-weight:700}
.oms-login-submit{width:100%;height:50px;border:0;border-radius:10px;background:linear-gradient(90deg,#0b4f98,#1769e0);color:#fff;font-size:15px;font-weight:800;cursor:pointer;box-shadow:0 8px 20px rgba(23,105,224,.23)}.oms-login-submit:hover{background:#0d55bc}.oms-login-secure{text-align:center;color:#8491a5;font-size:12px;margin:18px 0 0}
@media(max-width:760px){.oms-login-page{padding:18px 14px}.oms-login-card{grid-template-columns:1fr;min-height:0;background:rgba(255,255,255,.14)}.oms-login-brand{padding:30px 26px;border-right:0;border-bottom:1px solid rgba(255,255,255,.2);background-position:38% center}.oms-login-logo,.oms-login-fallback{width:112px;height:112px;margin-bottom:16px}.oms-login-brand h1{font-size:30px;letter-spacing:1px}.oms-login-brand h2{font-size:16px;margin-bottom:12px}.oms-login-brand p{font-size:13px}.oms-login-form-panel{padding:32px 26px;background:rgba(255,255,255,.9)}.oms-login-form-panel h2{font-size:25px}.oms-login-intro{margin-bottom:20px}}
@media(max-width:390px){.oms-login-options{align-items:flex-start;flex-direction:column}.oms-login-brand{padding:24px 20px}.oms-login-form-panel{padding:26px 20px}}
.oms-self-registration-link{display:grid;place-items:center;min-height:46px;margin-top:12px;border:1px solid #b8cee9;border-radius:10px;color:#0b4f98;font-size:13px;font-weight:800;text-decoration:none}.oms-self-registration-link:hover{border-color:#1769e0;background:#eef5ff;color:#1769e0}
