:root{font-family:'DM Sans',system-ui,sans-serif;color:#101b2e;background:#f8fbfa}*{box-sizing:border-box}body{margin:0}button,input{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.app-shell{min-height:100vh;display:grid;grid-template-columns:232px minmax(0,1fr)}.sidebar{background:#fff;border-right:1px solid #e7eeeb;display:flex;flex-direction:column;padding:24px 14px;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:11px;padding:0 7px 30px;font-family:Outfit,sans-serif;font-size:19px;font-weight:800}.brand b{color:#0b9367}.brand small{display:block;font:700 10px 'DM Sans',sans-serif;letter-spacing:.15em;color:#8b9c9a}.brand-mark,.avatar{display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#00ac79,#087d58);box-shadow:0 10px 19px #07946538}.brand-mark{width:39px;height:39px;border-radius:13px;position:relative}.brand-mark span{position:absolute;right:4px;bottom:4px;font-size:9px}.sidebar nav{display:grid;gap:6px}.sidebar nav a{padding:12px 13px;display:flex;align-items:center;gap:12px;border-radius:12px;color:#50617a;font-weight:700;font-size:14px}.sidebar nav a span{font-size:18px}.sidebar nav a:hover,.sidebar nav a.active{background:#e8f8f1;color:#047d59}.sidebar-foot{margin-top:auto;border-radius:13px;background:#effbf5;color:#057455;padding:15px;font-weight:700;font-size:12px}.safe-dot{display:inline-block;width:8px;height:8px;background:#10b981;border-radius:50%;margin-right:5px;box-shadow:0 0 0 4px #c7f5e0}main{min-width:0}.topbar{background:#fff;border-bottom:1px solid #e7eeeb;min-height:98px;display:flex;align-items:center;justify-content:space-between;padding:20px clamp(20px,4vw,62px);gap:20px}.eyebrow{color:#0e9a6c;letter-spacing:.15em;font-size:11px;font-weight:800}.topbar h1{font:800 26px Outfit,sans-serif;margin:2px 0}.topbar p{color:#71809a;margin:0;font-size:13px}.top-actions{display:flex;gap:15px;align-items:center;font-size:13px;font-weight:700}.top-actions a,.top-actions button{border:1px solid #e3ece8;border-radius:10px;padding:10px 14px;background:#fff}.avatar{width:40px;height:40px;border-radius:50%}.content{max-width:1260px;margin:auto;padding:30px clamp(20px,4vw,62px) 80px}.notice{background:#e8f8f1;border:1px solid #a5e4c8;color:#056744;padding:13px 18px;border-radius:12px;margin-bottom:20px}.card{background:#fff;border:1px solid #e6eeeb;border-radius:22px;box-shadow:0 15px 45px #174d3210;padding:24px}.auth-card{max-width:510px;margin:60px auto;padding:35px}.auth-card h2,.card h2{font:800 25px Outfit,sans-serif;margin:9px 0}.auth-card p,.card p{color:#71809a;line-height:1.55;margin:10px 0 20px}.icon{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;font-size:22px;margin-bottom:18px;box-shadow:inset -4px -5px 9px #0002,0 9px 17px #033c1c28;color:#fff}.emerald{background:linear-gradient(135deg,#5ce3af,#087f58)}.mint{background:linear-gradient(135deg,#80e6dd,#15a69d)}.amber{background:linear-gradient(135deg,#ffd994,#f5a623)}label{display:block;font-size:13px;font-weight:700;margin:16px 0 7px}input{width:100%;height:48px;padding:0 14px;border:1px solid #dfe8e5;border-radius:11px;outline:0;background:#fbfdfc;color:#142233}input:focus{border-color:#0eaa7b;box-shadow:0 0 0 3px #17ae7727}.primary{border:0;border-radius:11px;background:linear-gradient(110deg,#118c61,#087647);color:#fff;padding:13px 19px;font-weight:800;box-shadow:0 8px 16px #08764737;margin-top:18px}.primary:hover{filter:brightness(1.08)}.welcome{border-radius:24px;background:radial-gradient(circle at 74% 20%,#54d3ab99,transparent 33%),linear-gradient(110deg,#078559,#0aaa78);color:#fff;min-height:224px;padding:38px;display:flex;align-items:center;justify-content:space-between;overflow:hidden;position:relative}.welcome .eyebrow{color:#b6f5dc}.welcome h2{font:800 clamp(29px,4vw,43px) Outfit,sans-serif;margin:11px 0}.welcome p{color:#def9ed;max-width:410px}.welcome-art{position:relative;width:230px;height:145px;flex:none}.welcome-art .orbit{position:absolute;inset:-85px -40px;border:1px solid #ffffff4f;border-radius:50%;box-shadow:0 0 0 28px #ffffff0f,0 0 0 65px #ffffff0b}.screen{position:absolute;right:40px;top:12px;display:grid;place-items:center;width:125px;height:125px;border-radius:29px;border:8px solid #dcfff0;background:linear-gradient(145deg,#073e35,#062a29);font:800 54px Outfit,sans-serif;box-shadow:17px 20px 20px #00533465,inset 0 0 25px #9cfed463;transform:rotate(10deg)}.screen span{font-size:19px;position:absolute;right:20px;bottom:19px}.spark{position:absolute;left:10px;top:10px;font-size:34px;color:#d0fff1}.summary{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:22px 0}.summary .card{min-height:165px}.summary .icon{width:38px;height:38px;font-size:17px;margin-bottom:12px}.summary .label{font-size:11px;letter-spacing:.12em;font-weight:800;color:#71849a}.summary strong{display:block;font:800 29px Outfit,sans-serif;margin:6px 0}.summary small{color:#86929d}.columns{display:grid;grid-template-columns:1.3fr 1fr;gap:18px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:10px}.pill{border-radius:30px;background:#e9f9f2;color:#087c57;padding:8px 11px;font-size:11px;font-weight:800}.device{display:flex;align-items:center;gap:13px;padding:16px 0;border-top:1px solid #edf1ef}.device-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:#e8f8f1;color:#087b58;font-size:22px}.device-info{flex:1;min-width:0}.device-info strong{display:block}.device-info small{color:#849096}.device button{border:1px solid #e4e9e7;background:white;color:#b8444f;border-radius:9px;padding:9px;font-size:12px;font-weight:700}.hint{margin-top:19px;color:#668174;font-size:12px}.hint span{color:#069c69}@media(max-width:930px){.columns{grid-template-columns:1fr}.summary{grid-template-columns:repeat(2,1fr)}}@media(max-width:680px){.app-shell{display:block}.sidebar{height:auto;position:static;padding:12px 16px;border-right:0;border-bottom:1px solid #e7eeeb}.sidebar .brand{padding:0}.sidebar nav,.sidebar-foot{display:none}.topbar{padding:18px 20px}.topbar p,.top-actions a{display:none}.topbar h1{font-size:23px}.content{padding:19px 16px 65px}.welcome{padding:26px;min-height:190px}.welcome-art{width:85px}.welcome-art .screen{width:75px;height:75px;font-size:32px;border-width:5px;right:-15px;top:30px}.welcome-art .screen span{font-size:11px;right:10px;bottom:9px}.summary{grid-template-columns:1fr 1fr;gap:10px}.summary .card{padding:16px;min-height:150px}.summary .card:last-child{grid-column:span 2}.summary strong{font-size:22px}.columns{gap:12px}.card{padding:20px}.auth-card{margin:26px auto;padding:25px}}
