:root{--green:#174e46;--deep:#133f39;--lime:#c9ef82;--muted:#71837a;--line:#e1e9e4}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:#f4f7f5;color:#223a35;font:15px/1.5 Arial,Helvetica,sans-serif}main{max-width:1180px;margin:auto;padding:40px 28px}header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:30px}h1{font-size:36px;letter-spacing:-1.2px;margin:8px 0;display:flex;align-items:baseline;gap:5px}h1 small{font-size:16px;letter-spacing:0;color:var(--muted);margin-left:12px;font-weight:400}.dot{width:9px;height:9px;border-radius:50%;background:var(--lime)}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--muted)}h2{font-size:20px;margin:0 0 5px}h3{font-size:17px}p{color:var(--muted);margin:5px 0 20px}small{font-size:12px;color:var(--muted);line-height:1.6}.card{background:white;border:1px solid var(--line);border-radius:18px;padding:26px;margin-bottom:22px;min-width:0;box-shadow:0 3px 18px #133f3903}.login{max-width:450px;margin:55px auto}.login>h2{margin-top:20px}.login>small{display:block;margin-top:22px}form,label{display:grid;gap:8px}form{gap:18px}input,select{border:1px solid #d4e0d9;border-radius:9px;padding:12px;font:inherit;width:100%;min-width:0;color:inherit;background:white}input:focus,select:focus{outline:2px solid #9cc7ae;outline-offset:1px}button{border:0;background:var(--green);color:white;border-radius:9px;padding:12px 17px;font:600 14px/1.4 Arial;cursor:pointer;width:max-content}button:disabled{opacity:.5;cursor:wait}.secondary{background:white;border:1px solid var(--line);color:var(--green)}button:hover{filter:brightness(.95)}button:focus-visible,summary:focus-visible{outline:3px solid #9cc7ae;outline-offset:3px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.metric{background:white;border:1px solid var(--line);border-radius:15px;padding:22px}.metric strong{display:block;font-size:30px;color:var(--green);margin-top:8px}.metric span{color:var(--muted);font-size:13px}.layout{display:grid;grid-template-columns:390px minmax(0,1fr);gap:22px;align-items:start}.heading{display:flex;gap:12px;align-items:center;margin-bottom:24px}.heading p{margin:0;font-size:13px}.stepbadge{width:34px;height:34px;flex:0 0 34px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;font-size:16px;line-height:1;font-weight:700;background:var(--lime);color:var(--deep)}.tip{background:#f1f7ed;padding:16px;border-radius:10px;font-size:13px;line-height:1.7;margin-top:24px;color:#577261}.filters{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.filters button{padding:7px 10px;font-size:12px}.filters button.active{background:var(--lime);border-color:var(--lime);color:var(--deep)}.companies{display:grid;gap:12px;max-height:500px;overflow:auto}.company{border:1px solid var(--line);border-radius:12px;padding:17px;display:grid;gap:7px}.companytop{display:flex;justify-content:space-between;align-items:center;gap:10px}.company small{overflow-wrap:anywhere}.company button{margin-top:8px;padding:7px 12px;font-size:12px}.badge{padding:4px 9px;background:#edf5e8;color:#3b6545;border-radius:20px;font-size:11px;white-space:nowrap}.badge.expired{background:#fff0ec;color:#a3483b}.badge.soon{background:#fff3db;color:#946b25}.table{overflow:auto;margin:18px 0}table{width:100%;border-collapse:collapse;font-size:13px}td,th{padding:13px 12px;text-align:left;border-bottom:1px solid var(--line)}th{color:var(--muted);font-weight:500}.securitygrid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:22px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:18px}.checkbox{display:flex;align-items:center;gap:10px}.checkbox input{width:18px}summary{font-weight:600;cursor:pointer;color:var(--green)}details>p,details>form{margin-top:20px}.audit{margin-top:20px;max-height:400px;overflow:auto}.audit>div{padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.audit small{display:block}#message:not(:empty){padding:14px 18px;background:#eef5e8;border-radius:10px;color:#48674b;margin-bottom:20px}#message.error{background:#fff0ec;color:#a3483b}footer{font-size:12px;color:var(--muted);margin:30px 0;text-align:center}@media(max-width:850px){.layout{grid-template-columns:1fr}.metrics{grid-template-columns:1fr 1fr}.securitygrid{grid-template-columns:1fr}}@media(max-width:500px){main{padding:24px 14px}.card{padding:20px}.grid2{grid-template-columns:1fr}h1{font-size:29px}h1 small{font-size:13px}.companytop{flex-wrap:wrap}.metric{padding:16px}header{flex-wrap:wrap}}
