:root{--n:#155e52;--dark:#14221f;--muted:#70807b;--line:#dce5e1;--bg:#f3f7f5}*{box-sizing:border-box}body{margin:0;font-family:Arial,sans-serif;color:var(--dark);background:var(--bg)}button,input{font:inherit}.hidden{display:none!important}.logo{width:42px;height:42px;border-radius:12px;background:var(--n);color:#fff;display:grid;place-items:center;font-size:23px;font-weight:900}.login{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 10%,#dceee8,transparent 35%),#f5f8f6}.card{width:min(420px,calc(100% - 32px));background:#fff;padding:38px;border-radius:22px;box-shadow:0 25px 80px #153c3020}.card h1{margin:18px 0 6px}.card p{color:var(--muted);margin:0 0 26px}.card label{display:block;font-size:12px;font-weight:700;margin:14px 0}.card input,.clientform input{width:100%;border:1px solid var(--line);border-radius:9px;padding:13px;margin-top:7px;outline:none}.card input:focus,.clientform input:focus{border-color:var(--n);box-shadow:0 0 0 3px #155e5215}.card button,.dialog>button,.clientform button{width:100%;border:0;border-radius:9px;background:var(--n);color:#fff;padding:14px;font-weight:700;margin-top:12px;cursor:pointer}.card small{display:block;text-align:center;color:#8b9693;margin-top:18px}.error{color:#b42318;font-size:13px;margin:8px 0}.app{display:grid;grid-template-columns:340px 1fr;min-height:100vh}.app aside{background:#fff;border-right:1px solid var(--line);padding:26px;display:flex;flex-direction:column;gap:23px}.app header{display:flex;align-items:center;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--line)}header b{display:block;font-size:20px}header small{display:block;color:var(--muted);margin-top:3px}.app section>label{display:flex;justify-content:space-between;text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:800;margin-bottom:10px}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.app button{border:1px solid var(--line);background:#fff;border-radius:8px;padding:9px;cursor:pointer}.grid button.on,.seg button.on{background:var(--n);color:#fff;border-color:var(--n)}.seg{display:grid;grid-template-columns:1fr 1fr;background:#eef3f1;border-radius:9px;padding:3px;margin-bottom:8px}.seg button{border:0}.outline{width:100%;color:var(--n);font-weight:700}.app input[type=range],.dialog input[type=range]{width:100%;accent-color:var(--n)}.fields{display:grid;grid-template-columns:1fr 28px 1fr 28px;align-items:center}.fields input{width:100%;border:1px solid var(--line);border-radius:8px;padding:9px}.app footer{margin-top:auto;display:flex;flex-wrap:wrap;gap:8px;color:var(--muted);font-size:11px}.app footer button{margin-left:auto;padding:3px 9px}.chart{background:#fff;margin:20px;border-radius:18px;display:flex;flex-direction:column;overflow:hidden}.top,.bottom{display:flex;justify-content:space-between;align-items:center;padding:24px 30px;color:var(--muted);font-size:12px;letter-spacing:.1em}.top strong{font-size:26px;color:var(--n);letter-spacing:0}.bottom{border-top:1px solid #edf1ef;letter-spacing:0}.letters{flex:1;display:flex;align-items:center;justify-content:center;white-space:nowrap;font-weight:900;letter-spacing:.12em;overflow:hidden}.modal{position:fixed;inset:0;background:#10241ed0;display:grid;place-items:center;padding:20px;z-index:10}.dialog{position:relative;background:#fff;border-radius:18px;padding:30px;width:min(650px,100%);max-height:90vh;overflow:auto}.dialog h2{margin-top:0}.dialog p{color:var(--muted)}.rulerbox{padding:35px 15px;background:#f3f7f5;border-radius:12px;overflow:auto;margin:25px 0}.ruler{height:45px;border-top:4px solid var(--n);position:relative;margin:auto;text-align:center;color:var(--n);padding-top:10px}.ruler i{position:absolute;width:4px;height:20px;background:var(--n);top:-10px}.ruler i:first-child{left:0}.ruler i:last-child{right:0}.close{position:absolute!important;right:20px;top:10px;width:auto!important;background:transparent!important;color:var(--dark)!important;font-size:25px}.clientform{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:8px;margin:20px 0}.clientform button{margin-top:7px}.user{display:flex;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.user span{flex:1}.user small{display:block;color:var(--muted);margin-top:3px}.user em{font-style:normal;font-size:12px;color:var(--n)}@media(max-width:800px){.app{grid-template-columns:1fr}.chart{min-height:100vh;margin:0}.clientform{grid-template-columns:1fr}}
