*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--red:#c1121f;--red-dark:#9a0e18;--ink:#1c2b3a;--muted:#5a6b7b;--bg:#f0f2f4;--surface:#e2e4e6;--border:#d2d6d9;--white:#fff;--cat1:#e63329;--cat2:#f5821f;--cat3:#2e97d6;--cat4:#f6b40e;--cat5:#5bc2e7;--cat6:#4caf50;--cat7:#7e57c2;--cat8:#6e7b8b}body{background:var(--bg);color:var(--ink);min-height:100vh;font-family:Segoe UI,Arial,sans-serif}a{color:inherit;text-decoration:none}.page-wrap{flex-direction:column;min-height:100vh;display:flex}.site-header{border-bottom:3px solid var(--red);background:#fff;justify-content:space-between;align-items:center;height:72px;padding:0 32px;display:flex}.site-header .logo-link img{width:auto;height:40px;display:block}.logo-text-fallback{letter-spacing:1px;color:var(--ink);font-size:18px;font-weight:900}.logo-text-fallback span{color:var(--red)}.header-nav{align-items:center;gap:24px;font-size:14px;font-weight:600;display:flex}.header-nav a{color:var(--muted);transition:color .15s}.header-nav a:hover,.header-nav a.active{color:var(--red)}.nav-signout{color:#aaa!important;font-size:12px!important}.enttech-footer-logo{object-fit:contain}.site-footer{border-top:1px solid var(--border);background:#fff;justify-content:flex-end;align-items:center;gap:8px;margin-top:auto;padding:20px 32px;display:flex}.site-footer .powered-label{color:var(--muted);font-size:11px}.site-footer img{width:auto;height:28px}.main-content{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:32px}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:28px;display:grid}.stat-card{background:#fff;border-radius:10px;padding:20px 24px;box-shadow:0 2px 8px #00000012}.stat-card .val{color:var(--red);font-size:36px;font-weight:700}.stat-card .label{color:var(--muted);margin-top:4px;font-size:13px}.chart-section{background:#fff;border-radius:10px;margin-bottom:24px;padding:24px 28px;box-shadow:0 2px 8px #00000012}.chart-section h2{margin-bottom:16px;font-size:17px;font-weight:700}.bar-row{align-items:center;gap:10px;margin-bottom:8px;font-size:13px;display:flex}.bar-row .bar-label{min-width:220px;color:var(--ink);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bar-row .bar-track{background:var(--surface);border-radius:4px;flex:1;height:18px;overflow:hidden}.bar-row .bar-fill{border-radius:4px;height:100%;transition:width .3s}.bar-row .bar-count{text-align:right;min-width:28px;color:var(--muted);font-weight:600}.project-table{border-collapse:collapse;width:100%;font-size:13px}.project-table th{background:var(--red);color:#fff;text-align:left;padding:8px 12px;font-weight:600}.project-table td{border-bottom:1px solid var(--border);vertical-align:top;padding:8px 12px}.project-table tr:nth-child(2n) td{background:var(--surface)}.project-table tr:hover td{background:#dde0e3}.pill{color:#fff;border-radius:5px;padding:2px 10px;font-size:11px;font-weight:700;display:inline-block}.pill-live{background:#2e9e5b}.pill-dev{background:#2e97d6}.pill-pilot{color:var(--ink);background:#f6b40e}.pill-concept{background:#8a97a6}.filter-bar{flex-wrap:wrap;gap:10px;margin-bottom:18px;display:flex}.filter-bar select{border:1px solid var(--border);color:var(--ink);background:#fff;border-radius:6px;padding:7px 12px;font-size:13px}.login-wrap{background:var(--bg);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:#fff;border-radius:12px;width:100%;max-width:420px;padding:40px 44px;position:relative;overflow:hidden;box-shadow:0 4px 20px #0000001f}.login-card:before{content:"";background:linear-gradient(90deg, var(--red), #e8412c);height:5px;position:absolute;top:0;left:0;right:0}.login-logo{text-align:center;margin-bottom:24px}.login-logo img{width:auto;height:44px}.login-card h1{margin-bottom:6px;font-size:20px;font-weight:700}.login-card p{color:var(--muted);margin-bottom:22px;font-size:13.5px}.login-card input[type=email]{border:1.5px solid var(--border);border-radius:7px;outline:none;width:100%;margin-bottom:14px;padding:11px 14px;font-size:14px;transition:border-color .2s}.login-card input[type=email]:focus{border-color:var(--red)}.login-card button{background:var(--red);color:#fff;cursor:pointer;border:none;border-radius:7px;width:100%;padding:12px;font-size:15px;font-weight:700;transition:background .2s}.login-card button:hover{background:var(--red-dark)}.login-footer{color:#aaa;text-align:center;margin-top:22px;font-size:11px}.login-footer .link-red{color:#c1121f}.login-service-of{color:#aaa;border-top:1px solid #eee;justify-content:center;align-items:center;gap:10px;margin-top:20px;padding-top:16px;font-size:12px;display:flex}.login-service-of a{opacity:.75;align-items:center;transition:opacity .2s;display:inline-flex}.login-service-of a:hover{opacity:1}.enttech-logo-img{object-fit:contain}.msg{border-radius:7px;margin-bottom:14px;padding:11px 14px;font-size:13.5px}.msg-ok{color:#1a6b3c;background:#e8f7ee}.msg-err{color:#9a0e18;background:#fdecea}.admin-form{flex-wrap:wrap;gap:10px;margin-bottom:24px;display:flex}.admin-form input{border:1.5px solid var(--border);border-radius:6px;width:200px;padding:9px 12px;font-size:13px}.admin-form button{background:var(--red);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:9px 18px;font-size:13px;font-weight:700}
