@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');
:root{--bg:#f5f7fb;--panel:#fff;--side:#131e32;--ink:#172238;--muted:#6b788d;--accent:#2260e5;--accent2:#e9f0ff;--line:#e5eaf1;--green:#16794c;--red:#bc3e47;--amber:#976500;--radius:14px}*{box-sizing:border-box}body{margin:0;font:14px/1.52 Inter,system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--ink)}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.app-layout{display:grid;grid-template-columns:254px 1fr;min-height:100vh}.sidebar{background:var(--side);color:#d5e0f3;padding:22px 14px;min-height:100vh;position:sticky;top:0;height:100vh;overflow:auto}.side-brand{display:flex;align-items:center;gap:12px;padding:4px 11px 22px;border-bottom:1px solid #30415a;margin-bottom:12px;color:white;font-size:15px;font-weight:800}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:#2468eb;color:#fff;font-size:17px;font-weight:800;flex:none}.sidebar h4{padding:15px 13px 6px;margin:0;color:#8298b8;font-size:10px;letter-spacing:1.25px;text-transform:uppercase}.sidebar a{display:flex;align-items:center;gap:11px;color:#c1d0e4;border-radius:9px;padding:9px 12px;margin:2px 0;font-size:13px}.sidebar a:hover,.sidebar a.active{background:#293f61;color:white;text-decoration:none}.sidebar a.active{border-left:3px solid #77a5ff;padding-left:9px}.side-icon{width:18px;text-align:center;font-size:16px;color:#9fb4d0}.main-area{min-width:0}.topbar{height:69px;display:flex;align-items:center;justify-content:space-between;padding:0 30px;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:6}.topbar small{display:block;color:var(--muted);font-size:11px}.content{max-width:1600px;margin:auto;padding:28px 32px 60px}.page-title{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:22px}.page-title h1{margin:0;font-size:25px;letter-spacing:-.75px}.page-title p{margin:4px 0 0;color:var(--muted)}.card,.stat,.install-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 4px 24px rgba(20,45,95,.035)}.card{padding:22px;margin-bottom:19px}.card h2{font-size:16px;margin:0 0 17px}.card h3{font-size:14px;margin:0 0 13px}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.stat{padding:18px}.stat span{display:block;color:var(--muted);font-size:12px}.stat strong{font-size:25px;display:block;margin-top:5px;letter-spacing:-.7px}.stat small{font-size:11px;color:var(--muted)}.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.form-grid .wide{grid-column:1/-1}label{display:block;color:#43526a;font-size:12px;font-weight:600;margin-bottom:8px}input,select,textarea{width:100%;padding:10px 12px;margin-top:5px;border:1px solid #cfd8e5;border-radius:9px;color:var(--ink);background:#fff;font:inherit;font-size:13px}textarea{min-height:86px;resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid #b8cdfa;border-color:var(--accent)}input[type=checkbox]{width:auto;margin:0;accent-color:#2563eb}.checkbox-row{display:flex;align-items:center;gap:10px;margin:12px 0}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:#fff;border:1px solid #cad6e8;color:#243650;padding:9px 13px;border-radius:9px;font:inherit;font-weight:600;font-size:12px;cursor:pointer;white-space:nowrap}.btn:hover{text-decoration:none;filter:brightness(.965)}.btn.primary{background:var(--accent);border-color:var(--accent);color:white}.btn.danger{background:#fff5f4;border-color:#ffd2d0;color:var(--red)}.btn.light{background:var(--accent2);border-color:var(--accent2);color:var(--accent)}.btn.sm{padding:5px 9px;font-size:11px}.btn.block{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed}.button-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.muted{color:var(--muted)}.micro{font-size:11px}.pill{display:inline-block;border-radius:999px;background:#eef2f7;color:#52627a;padding:4px 9px;font-size:11px;font-weight:700;white-space:nowrap;text-transform:capitalize}.pill.good{background:#e6f7ee;color:var(--green)}.pill.bad{background:#fcebec;color:var(--red)}.pill.neutral{background:#eef2f7;color:#60708a}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;color:#68778c;background:#f7f9fc;font-weight:700;white-space:nowrap}td,th{padding:12px;border-bottom:1px solid var(--line);vertical-align:middle}tbody tr:hover{background:#fafcff}td .btn{margin-right:3px}.numeric{text-align:right;font-variant-numeric:tabular-nums}.alert{padding:12px 14px;border-radius:9px;border:1px solid #d8e5ff;background:#f0f6ff;margin-bottom:16px;font-size:13px}.alert.success{border-color:#bcdfc9;background:#effbf3;color:#136b41}.alert.error,.alert.danger{border-color:#f4b9b9;background:#fff1f1;color:#a32935}.alert.warning{border-color:#f3dfb1;background:#fff9eb;color:#836018}.alert.note{color:#466188}.toolbar{display:flex;gap:9px;flex-wrap:wrap;align-items:end;margin-bottom:13px}.toolbar>*{margin-bottom:0}.toolbar label{min-width:160px;margin:0}.tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:17px}.tab{padding:9px 13px;border-radius:9px;background:#edf1f8;font-weight:600;font-size:12px;color:#536780}.tab.active{background:#2362e4;color:#fff}.steps{display:flex;flex-wrap:wrap;gap:9px;margin:10px 0}.step{border:1px solid #dce5f0;background:#f7f9fc;border-radius:9px;padding:12px;min-width:135px;flex:1}.step strong{display:block}.step small{color:var(--muted)}.section-note{padding:11px 14px;background:#f8fafd;border:1px dashed #d7e1ef;border-radius:9px;color:#65768f;font-size:12px;margin:12px 0}.row-between{display:flex;justify-content:space-between;align-items:center;gap:12px}.kv{display:grid;grid-template-columns:155px 1fr;border-bottom:1px solid var(--line);padding:9px 0;font-size:12px}.kv span:first-child{color:var(--muted)}.mini-list{margin:0;padding-left:18px;color:#43516b}.mini-list li{margin:7px 0}.install-body,.login-body{min-height:100vh;display:grid;place-items:start center;padding:45px 16px;background:linear-gradient(135deg,#eff4ff,#f5f7fb)}.install-card{width:min(850px,100%);padding:34px}.install-card h1{font-size:25px;margin:15px 0 7px}.install-card h2{font-size:16px;margin:24px 0 13px}.wizard-steps{display:flex;gap:7px;margin:19px 0}.wizard-steps span{flex:1;background:#eff3f8;border-radius:8px;padding:9px;text-align:center;font-size:11px}.wizard-steps .active{background:#e3edff;color:#2258cd}.check-row{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--line)}.ok{color:var(--green)}.danger{color:var(--red)}.login-card{width:min(440px,100%);padding:36px}.demo-card{border-left:3px solid #2b69ea}.mobile-menu{display:none}.sticky-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:16px}.footer{color:#97a2b2;text-align:center;padding:8px;font-size:11px}.reports-menu{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-bottom:17px}.reports-menu a{border:1px solid var(--line);background:#fff;border-radius:9px;padding:11px;font-weight:600;font-size:11px;text-align:center;color:#536987}.reports-menu a.active{background:#e8f0ff;border-color:#b2c8fc;color:var(--accent)}.bar-list{display:grid;gap:13px}.bar-row{display:grid;grid-template-columns:130px 1fr 60px;gap:10px;align-items:center;font-size:12px}.bar{height:11px;border-radius:8px;background:#e7efff;overflow:hidden}.bar i{height:100%;display:block;background:#3c79e7;border-radius:8px}.search-area{display:flex;gap:9px;align-items:end}.no-data{padding:20px;text-align:center;color:var(--muted)}.user-chip{border-radius:9px;background:#edf4ff;color:#255ccc;padding:8px 12px;font-size:12px;font-weight:600}.small-form{display:inline-flex;align-items:center;gap:6px}.small-form input,.small-form select{width:auto;max-width:145px;margin:0}.menu-note{color:#8e9db3;font-size:11px;padding:10px 12px}.code{background:#eef3fb;font:12px ui-monospace,monospace;padding:3px 6px;border-radius:5px}.walkthrough{counter-reset:step}.walkthrough article{position:relative;padding:4px 0 22px 36px;border-left:2px solid #dce7fb;margin-left:12px}.walkthrough article:before{counter-increment:step;content:counter(step);position:absolute;left:-15px;top:0;width:27px;height:27px;display:grid;place-items:center;background:var(--accent);color:#fff;border-radius:50%;font-size:12px;font-weight:700}.walkthrough article h3{margin-top:0}.walkthrough article p{margin:7px 0;color:var(--muted)}
@media(max-width:1100px){.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reports-menu{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:850px){.app-layout{display:block}.sidebar{position:fixed;z-index:20;transform:translateX(-110%);transition:transform .2s;width:254px}.sidebar.open{transform:none}.mobile-menu{display:inline-flex}.topbar{padding:0 18px}.content{padding:22px 15px}.grid-2,.grid-3{grid-template-columns:1fr}.reports-menu{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.stat-grid,.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.page-title h1{font-size:21px}.install-card{padding:20px}.wizard-steps{flex-wrap:wrap}.wizard-steps span{flex:0 0 48%}.kv{grid-template-columns:110px 1fr}}

.sidebar .nav-group{margin:8px 0 10px}.sidebar .nav-group summary{padding:13px 12px 8px;cursor:pointer;color:#95acce;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.9px;list-style:none}.sidebar .nav-group summary:after{content:"⌄";float:right;color:#738bad}.sidebar .nav-group:not([open]) summary:after{content:"›"}.sidebar .nav-group summary::-webkit-details-marker{display:none}.sidebar .nav-children{margin:3px 0 12px 7px;border-left:1px solid #354660;padding-left:5px}

/* V1.2: Multi-depth sidebar and more readable reports/controls */
.sidebar .nav-subgroup{margin:5px 0 7px;}
.sidebar .nav-subgroup > summary{color:#acc1da;padding:9px 10px 6px;font-weight:700;font-size:12px;cursor:pointer;list-style:none;}
.sidebar .nav-subgroup > summary::-webkit-details-marker{display:none}
.sidebar .nav-subgroup > summary:before{content:'▸';display:inline-block;margin-right:8px;font-size:10px;transition:transform .12s}
.sidebar .nav-subgroup[open] > summary:before{transform:rotate(90deg)}
.sidebar .nav-deeper{margin-left:10px;padding-left:7px;border-left:1px solid #354660}
.sidebar .nav-subgroup .nav-subgroup > summary{font-size:11px;color:#a2b6d3}
.sidebar .nav-subgroup a{font-size:12px;padding:8px 8px}
.section-note strong{color:var(--ink)}.status-dot{width:8px;height:8px;border-radius:99px;background:var(--accent);display:inline-block;margin-right:6px}
@media(max-width:760px){.row-between{flex-wrap:wrap}.toolbar label{min-width:min(100%,160px)}.card{padding:16px}}

/* Admin quick login management: accessible, collapsible per-employee controls. */
.employee-login-cell{min-width:240px;max-width:310px}.employee-email{display:block;overflow-wrap:anywhere;font-weight:600;margin-bottom:7px}.employee-login-details>summary{list-style:none;cursor:pointer;display:inline-flex}.employee-login-details>summary::-webkit-details-marker{display:none}.employee-login-details[open]{position:relative;z-index:2}.employee-credentials-form{min-width:250px;max-width:310px;display:grid;gap:8px;border:1px solid var(--line);padding:12px;margin:10px 0 4px;border-radius:10px;background:#f9fbfe;box-shadow:0 5px 18px rgba(20,45,95,.05)}.employee-credentials-form label{margin:0}.employee-credentials-form input{width:100%}.employee-credentials-form .btn{justify-self:start}.employee-credentials-form p{margin:2px 0}
