@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Plus+Jakarta+Sans:wght@500;600;700;800&display=swap');
:root{--g:#075e56;--g2:#0a8176;--g3:#dff4f0;--gold:#c79a4b;--ink:#173c38;--muted:#7b928e;--line:#e5eeec;--bg:#f4f8f7;--white:#fff;--shadow:0 18px 50px rgba(12,57,51,.08)}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,Arial,sans-serif;font-size:13px}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}
.sidebar{position:fixed;z-index:10;left:0;top:0;bottom:0;width:250px;padding:18px 14px;background:linear-gradient(180deg,#063f3a,#022a27);color:#b9d4d0}.brand{display:flex;gap:11px;align-items:center;padding:4px 8px 24px}.brandmark{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#e5c47d,#a87932);color:#fff;font-weight:800;font-size:21px;box-shadow:0 10px 24px #0003}.brand strong{display:block;color:#fff;font:800 20px 'Plus Jakarta Sans'}.brand small{font-size:8px;letter-spacing:1.4px}.sect{font-size:8px;letter-spacing:1.5px;color:#68948e;padding:11px 10px}.nav a{display:flex;gap:10px;align-items:center;padding:11px 12px;margin:3px 0;border-radius:11px;color:#a9c6c2;font-size:11px}.nav a:hover,.nav a.active{background:#ffffff14;color:#fff}.nav .ico{width:20px;text-align:center}.userbox{position:absolute;left:14px;right:14px;bottom:16px}.user{display:flex;align-items:center;gap:9px;padding:10px;background:#ffffff12;border:1px solid #ffffff12;border-radius:13px}.avatar{width:33px;height:33px;border-radius:50%;display:grid;place-items:center;background:#c59b4e;color:#fff;font-weight:800;font-size:11px}.user b{display:block;color:#fff;font-size:10px}.user small{font-size:8px;color:#8fb0ab}.logout{display:block;text-align:center;padding:9px;margin-top:7px;border-radius:10px;border:1px solid #ffffff16;font-size:9px}
.main{margin-left:250px;padding:24px 28px}.topbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.eyebrow{font-size:8px;font-weight:800;letter-spacing:1.5px;color:var(--muted)}h1{font:800 26px 'Plus Jakarta Sans';margin:6px 0 0;letter-spacing:-.7px}h2{font:800 21px 'Plus Jakarta Sans';margin:0 0 6px}h3{font:800 13px 'Plus Jakarta Sans';margin:0}.actions{display:flex;gap:7px}.btn{border:0;border-radius:11px;padding:10px 14px;font-size:10px;font-weight:800;cursor:pointer}.btn.primary{color:#fff;background:linear-gradient(135deg,var(--g2),var(--g))}.btn.gold{color:#fff;background:linear-gradient(135deg,#dfbf76,#a97a32)}.btn.soft{color:var(--g);background:var(--g3)}.btn.danger{color:#9b322a;background:#fff0ee}.btn:active{transform:translateY(1px)}
.hero{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center;padding:26px 28px;border-radius:20px;color:#fff;background:radial-gradient(circle at 90% 10%,#36a79b55,transparent 35%),linear-gradient(125deg,#063f3a,#08766c);box-shadow:0 18px 50px #0b5c5222}.hero:after{content:"";position:absolute;width:260px;height:260px;border:1px solid #ffffff16;border-radius:50%;right:-80px;bottom:-140px}.hero p{font-size:10px;color:#b8d9d5;margin:8px 0 0;line-height:1.6}.hero .eyebrow{color:#94d6ce}.hero>*{position:relative;z-index:1}
.stats{display:grid;grid-template-columns:repeat(5,1fr);gap:11px;margin:13px 0}.stat{background:#fff;border:1px solid var(--line);border-radius:15px;padding:15px;box-shadow:var(--shadow)}.stat small{font-size:8px;color:var(--muted)}.stat strong{display:block;font:800 23px 'Plus Jakarta Sans';margin-top:7px}.stat .delta{font-size:8px;color:#19815f;margin-top:4px}
.grid{display:grid;grid-template-columns:1.35fr .65fr;gap:13px}.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:17px;box-shadow:var(--shadow)}.cardhead{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.cardhead small{font-size:8px;color:var(--muted)}.chart{height:180px;display:flex;align-items:end;gap:11px;padding:12px 5px 22px}.bar{flex:1;min-height:8px;max-height:140px;border-radius:8px 8px 3px 3px;background:linear-gradient(180deg,#39ae9f,#08776d);position:relative}.bar span{position:absolute;left:50%;bottom:-18px;transform:translateX(-50%);font-size:7px;color:var(--muted)}.row{display:flex;align-items:center;gap:9px;padding:9px;border:1px solid #edf2f1;border-radius:11px;margin-bottom:7px}.row .avatar{width:29px;height:29px;font-size:9px}.row b{font-size:9px}.row small{display:block;font-size:7px;color:var(--muted);margin-top:3px}.badge{margin-left:auto;padding:5px 7px;border-radius:99px;font-size:7px;font-weight:800}.ok{background:#e3f7ed;color:#17724e}.late{background:#fff2d5;color:#8a5b08}.pending{background:#e9f1ff;color:#42679b}
.tablecard{margin-top:13px}.tablewrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:9px}th{padding:10px;text-align:left;color:var(--muted);font-size:7px;letter-spacing:1px;border-bottom:1px solid var(--line)}td{padding:10px;border-bottom:1px solid #eef3f2}
.formgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}label{font-size:9px;font-weight:800}input,select,textarea{width:100%;margin-top:5px;border:1px solid #dfeae7;border-radius:10px;padding:10px;background:#fff;color:var(--ink);outline:none}input:focus,select:focus,textarea:focus{border-color:#8bc9c1;box-shadow:0 0 0 3px #dff4f055}textarea{min-height:90px}.full{grid-column:1/-1}
.attgrid{display:grid;grid-template-columns:1.2fr .8fr;gap:13px}.camera{height:390px;background:#061c19;border-radius:14px;overflow:hidden;display:grid;place-items:center;color:#88a9a5;text-align:center}.camera video{width:100%;height:100%;object-fit:cover}.loc{padding:11px;background:#edf8f5;border-radius:11px;margin:12px 0}.loc b{font-size:9px}.loc small{display:block;color:var(--muted);font-size:8px;margin-top:4px}.tip{padding:10px;border-radius:10px;background:#f5f9f8;color:var(--muted);font-size:8px;line-height:1.6;margin-top:10px}
.login{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 15% 0,#1b9186,#063b36 52%,#022622)}.loginbox{width:min(940px,94vw);display:grid;grid-template-columns:1.1fr .9fr;background:#fff;border-radius:28px;overflow:hidden;box-shadow:0 35px 100px #001e1b66}.loginbrand{padding:55px;color:#dff2ef;background:linear-gradient(145deg,#0a786e,#04312e)}.loginbrand h1{font-size:72px;letter-spacing:-6px;color:#fff;margin:28px 0 2px}.loginbrand p{font-size:10px;line-height:1.8;color:#b6d9d4}.loginform{padding:55px}.loginform h2{font-size:25px}.loginform p{font-size:10px;color:var(--muted);margin-bottom:25px}.alert{padding:9px 10px;border-radius:9px;background:#fff0ee;color:#a13b31;font-size:9px;margin-bottom:10px}
.mobilebar{display:none}
@media(max-width:1000px){.stats{grid-template-columns:repeat(3,1fr)}.grid,.attgrid{grid-template-columns:1fr}}
@media(max-width:720px){.sidebar{display:none}.main{margin-left:0;padding:15px}.mobilebar{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.stats{grid-template-columns:1fr 1fr}.hero{display:block}.hero .btn{margin-top:14px}.formgrid{grid-template-columns:1fr}.full{grid-column:auto}.loginbox{grid-template-columns:1fr}.loginbrand{padding:30px}.loginbrand h1{font-size:52px}.loginform{padding:30px}}
