@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,400;0,500;0,600;0,700;0,800;1,400&display=swap";:root{--navy: #1B2D5B;--navy-light: #F0F3FA;--navy-border: #C8D4F0;--green: #107C10;--green-light: #EBF5EB;--green-border: #A8D5A8;--red: #C0392B;--red-light: #FDF0EE;--red-border: #F5C5BF;--amber: #D97706;--amber-light: #FEF9EC;--amber-border: #F5D98A;--blue: #2563EB;--blue-light: #EFF6FF;--blue-border: #BFDBFE;--text: #1A1A18;--text-2: #4A4A48;--text-3: #9B9B98;--bg: #F7F7F5;--bg-card: #FFFFFF;--bg-hover: #FAFAF8;--border: #F0F0EE;--border-md: #E8E8E6;--border-strong: #D0D0CE;--radius: 8px;--radius-lg: 12px;--radius-xl: 14px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}body{font-family:Plus Jakarta Sans,system-ui,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.5}h1{font-size:22px;font-weight:800;letter-spacing:-.4px}h2{font-size:16px;font-weight:700;letter-spacing:-.2px}p{color:var(--text-2)}a{color:inherit;text-decoration:none}.btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:var(--radius);font-family:inherit;font-size:13px;font-weight:700;border:none;cursor:pointer;transition:opacity .15s,box-shadow .15s;white-space:nowrap;line-height:1}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:hover:not(:disabled){opacity:.88}.btn-primary{background:var(--navy);color:#fff}.btn-secondary{background:#fff;color:var(--text);border:1px solid var(--border-md)}.btn-ghost{background:transparent;color:var(--text-2)}.btn-danger{background:var(--red-light);color:var(--red);border:1px solid var(--red-border)}.btn-sm{padding:5px 12px;font-size:12px}.btn-xs{padding:4px 9px;font-size:11px}.card{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid var(--border-md)}.input{width:100%;padding:8px 12px;border:1px solid var(--border-md);border-radius:var(--radius);font-family:inherit;font-size:13px;color:var(--text);background:#fff;outline:none;transition:border-color .15s}.input:focus{border-color:var(--navy)}.badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:700;padding:2px 8px;border-radius:4px}.badge-critical{background:var(--red-light);color:var(--red)}.badge-warning{background:var(--amber-light);color:var(--amber)}.badge-success{background:var(--green-light);color:var(--green)}.badge-navy{background:var(--navy-light);color:var(--navy)}.progress-track{height:5px;background:var(--border-md);border-radius:100px;overflow:hidden}.progress-fill{height:100%;background:var(--navy);border-radius:100px;transition:width .4s ease}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.animate-in{animation:slide-up .2s ease}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:10px}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.85)}}@keyframes resolve{0%{transform:scale(1)}40%{transform:scale(1.18)}to{transform:scale(1)}}@keyframes check-pop{0%{transform:scale(.5);opacity:0}60%{transform:scale(1.2)}to{transform:scale(1);opacity:1}}.resolve-anim{animation:resolve .25s ease}.pulse-dot{animation:pulse-dot 1.5s ease-in-out infinite}.check-pop{animation:check-pop .2s ease forwards}.article-row{transition:background .1s ease}
