:root{color:#223440;background:#f4f7f8;font-family:Arial,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,select{font:inherit}button{cursor:pointer;color:#233044;background:#fff;border:1px solid #d9e2e5;border-radius:9px;padding:10px 14px;font-weight:700}button:hover{border-color:#239a87}button:disabled{opacity:.45}input,select{color:#233044;background:#fff;border:1px solid #d9e2e5;border-radius:9px;min-width:0;padding:11px 12px}h1,h2,h3{letter-spacing:-.03em}h1{margin:7px 0 0;font-size:32px}h2{margin:0 0 22px;font-size:21px}h3{margin:25px 0 10px;font-size:17px}.muted,.empty{color:#748290}.eyebrow{letter-spacing:.14em;color:#8a9ba5;font-size:11px;font-weight:800}.primary{color:#fff;background:#097d70;border-color:#097d70}.brand{color:#fff;align-items:center;gap:11px;font-size:19px;font-weight:800;display:flex}.shell{min-height:100vh;display:flex}aside{color:#c5d5d9;background:#102936;flex-direction:column;flex:none;width:252px;height:100vh;padding:29px 18px;display:flex;position:sticky;top:0}aside .brand{padding:0 13px 28px}.tenant{border-top:1px solid #2a4350;border-bottom:1px solid #2a4350;padding:21px 12px}.tenant small{letter-spacing:.13em;color:#829ba4;font-size:10px;font-weight:800}.tenant select{color:#fff;background:#193b48;border:1px solid #2e4d58;width:100%;margin-top:8px;padding:9px;display:block}.tenant option{color:#233044;background:#fff}nav{gap:3px;padding-top:24px;display:grid;overflow:auto}nav button{text-align:left;color:#b9cbd1;background:0 0;border:0;border-radius:9px;align-items:center;gap:13px;padding:11px 14px;display:flex}nav button:hover,nav button.active{color:#fff;background:#1d4651}.nav-dot{color:#50baa9;font-size:11px}.aside-bottom{border-top:1px solid #2a4350;margin-top:auto;padding:18px 12px 0}.aside-bottom .user{gap:2px;display:grid}.aside-bottom small{color:#89a5ac}.aside-bottom button{color:#b9cbd1;background:0 0;border:0;margin-top:14px;padding:0}main{flex:1;min-width:0;padding:45px 52px 70px}header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px;display:flex}.panel,.stat{background:#fff;border:1px solid #e5ecee;border-radius:16px;box-shadow:0 10px 30px #223f4a09}.panel{padding:27px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:24px;display:grid}.stat{padding:23px}.stat small{color:#71848d;text-transform:capitalize;font-weight:700;display:block}.stat strong{color:#17313d;margin-top:14px;font-size:32px;display:block}.grid-two{grid-template-columns:1fr 1fr;gap:22px;display:grid}.list-row{border-bottom:1px solid #edf1f2;justify-content:space-between;align-items:center;gap:10px;padding:13px 0;display:flex}.badge{color:#536871;white-space:nowrap;background:#ebf1f3;border-radius:20px;padding:5px 10px;font-size:12px;font-weight:800;display:inline-block}.badge.hyvaksytty,.badge.voimassa{color:#17815a;background:#e6f5ed}.badge.hylatty,.badge.vanhentunut{color:#b94b47;background:#fce9e8}.badge.eraantyy,.badge.kesken{color:#9b6c12;background:#fff2d8}.toolbar{gap:10px;margin-bottom:19px;display:flex}.toolbar input{width:340px;max-width:100%}.table-wrap{overflow:auto}table{border-collapse:collapse;text-align:left;width:100%;min-width:680px}th{letter-spacing:.07em;text-transform:uppercase;color:#81919a;font-size:11px}th,td{border-bottom:1px solid #edf1f2;padding:15px 12px}td{font-size:14px}td:first-child{font-weight:700}.link{color:#087f70;background:0 0;border:0;padding:5px}.empty{text-align:center;padding:24px 10px}.pagination{justify-content:center;align-items:center;gap:16px;margin-top:20px;display:flex}.error,.success{border-radius:10px;margin-bottom:18px;padding:13px 17px}.error{color:#ac3939;background:#ffeded}.success{color:#176e51;background:#e4f6ee}.auth{background:radial-gradient(circle at 75% 25%,#1f5762 0,#102936 55%);place-items:center;min-height:100vh;padding:20px;display:grid}.auth-card{background:#fff;border-radius:20px;width:min(430px,100%);padding:39px;box-shadow:0 25px 60px #061d2680}.auth-card .brand{color:#17313d;margin-bottom:38px}.auth-card h1{font-size:27px}.auth-card p{margin:10px 0 28px}.auth-card form,.narrow{gap:17px;display:grid}.auth-card label,.modal label,.narrow label{gap:8px;font-size:13px;font-weight:700;display:grid}.auth-card input{width:100%}.narrow{max-width:600px}.check{align-items:center;display:flex!important}.check input{width:17px;height:17px}.drawer-overlay,.modal-overlay{z-index:10;background:#0c253593;position:fixed;inset:0}.drawer{background:#fff;width:min(560px,100%);height:100%;padding:37px;position:absolute;top:0;right:0;overflow:auto}.drawer h2{margin-top:7px}.drawer dl{border-top:1px solid #edf1f2;grid-template-columns:155px 1fr;gap:11px 18px;padding-top:20px;font-size:14px;display:grid}.drawer dt{color:#7a8c94;text-transform:capitalize}.drawer dd{overflow-wrap:anywhere;margin:0}.drawer a{color:#087f70}.close{background:0 0;border:0;font-size:25px;position:absolute;top:24px;right:25px}.modal-overlay{place-items:center;padding:20px;display:grid}.modal{background:#fff;border-radius:18px;width:min(760px,100%);max-height:90vh;padding:34px;position:relative;overflow:auto}.form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.form-grid input,.form-grid select{width:100%}.actions{justify-content:flex-end;gap:10px;margin-top:27px;display:flex}@media (width<=1000px){main{padding:35px 25px}.stats{grid-template-columns:repeat(2,1fr)}.grid-two{grid-template-columns:1fr}}@media (width<=700px){.shell{display:block}aside{width:auto;height:auto;padding:14px;position:relative}aside .brand{padding:4px 5px 10px}.tenant{padding:10px 5px}nav{padding:12px 0 4px;display:flex;overflow:auto}nav button{white-space:nowrap;padding:9px 10px}.aside-bottom{display:none}main{padding:25px 15px}header{align-items:flex-start}header .primary{font-size:12px}h1{font-size:25px}.panel{padding:18px}.stats{gap:9px}.stat{padding:15px}.stat strong{font-size:25px}.form-grid{grid-template-columns:1fr}.modal{padding:25px}.drawer{padding:27px}.drawer dl{grid-template-columns:110px 1fr}}
