@import "https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700;900&display=swap";
:root{--brand-blue:#003349;--brand-red:#e0004d;--bg-primary:#1a1718;--bg-secondary:#231f20;--bg-tertiary:#302b2c;--text-primary:#eaeaea;--text-secondary:#a0a0a0;--accent-color:var(--brand-red);--accent-hover:#b5003f;--accent-muted:#ef5a88;--status-urgent:var(--brand-red);--status-normal:#dae7d9;--status-partial:#ffc107;--border-color:#40383a;--border-radius:8px;--transition-speed:.2s}:root[data-theme=light]{--bg-primary:#f7f9fb;--bg-secondary:#fff;--bg-tertiary:#f1f5f8;--text-primary:var(--brand-blue);--text-secondary:#31576a;--border-color:#d9e2e8;--status-normal:var(--brand-blue);--status-partial:#9a6500}@keyframes pulse{0%,to{box-shadow:0 0 #e0004d73}50%{box-shadow:0 0 0 8px #e0004d00}}@keyframes skeleton-pulse{0%,to{opacity:.5}50%{opacity:.8}}.skeleton-pulse{background:linear-gradient(90deg, var(--bg-tertiary) 0%, var(--border-color) 50%, var(--bg-tertiary) 100%);background-size:200% 100%;animation:1.4s ease-in-out infinite skeleton-pulse}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);-webkit-font-smoothing:antialiased;font-family:Roboto,-apple-system,sans-serif;line-height:1.5}h1,h2,h3,h4,h5,h6{font-weight:700}a{color:inherit;text-decoration:none}.container{max-width:1200px;margin:0 auto;padding:2rem}.card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius);transition:transform var(--transition-speed);padding:1.5rem;box-shadow:0 6px 18px #00334914}.card:hover{transform:translateY(-2px)}.btn{border-radius:var(--border-radius);cursor:pointer;transition:background-color var(--transition-speed), transform var(--transition-speed);border:none;padding:.75rem 1.5rem;font-weight:700;display:inline-block}.btn-primary{background-color:var(--accent-color);color:#fff}.btn-primary:hover{background-color:var(--accent-hover)}.btn-primary:disabled{color:#eaeaea9e;background-color:#dae7d924;border:1px solid #dae7d91f}:root[data-theme=light] .btn-primary:disabled{color:#6b7f8b;background-color:#e1e9ee;border:1px solid #d1dde5}.btn-secondary{background-color:var(--bg-tertiary);color:var(--text-primary)}.btn-secondary:hover{background-color:#453c3e}:root[data-theme=light] .btn-secondary{color:var(--brand-blue);background-color:#edf4f8;border:1px solid #c9d9e2}:root[data-theme=light] .btn-secondary:hover{background-color:#e1edf3}.data-table{border-collapse:collapse;width:100%;margin-top:1rem}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--border-color);padding:1rem}.data-table th{color:var(--text-secondary);background-color:var(--bg-secondary);font-weight:500}.data-table tr:hover{background-color:#ffffff08}.form-group{margin-bottom:1.5rem}.form-label{color:var(--text-secondary);margin-bottom:.5rem;font-weight:500;display:block}input,select,textarea{background-color:var(--bg-tertiary);border:1px solid var(--border-color);width:100%;color:var(--text-primary);border-radius:var(--border-radius);transition:border-color var(--transition-speed);outline:none;padding:.75rem;font-family:inherit;font-size:1rem}input:focus,select:focus,textarea:focus{border-color:var(--accent-color)}:root[data-theme=light] input,:root[data-theme=light] select,:root[data-theme=light] textarea{color:var(--brand-blue);background-color:#f8fafc;border-color:#d3dee6}:root[data-theme=light] input::placeholder,:root[data-theme=light] textarea::placeholder{color:#6e8390}:root[data-theme=light] input:focus,:root[data-theme=light] select:focus,:root[data-theme=light] textarea:focus{border-color:var(--brand-red);background-color:#fff;box-shadow:0 0 0 3px #e0004d1a}.status-badge{border-radius:9999px;padding:.35rem .75rem;font-size:.85rem;font-weight:700}.status-urgent{color:var(--status-urgent);background-color:#e0004d1f;border:1px solid #e0004d47}.status-normal{color:var(--status-normal,#8bcc85);background-color:#dae7d926;border:1px solid #dae7d94d}:root[data-theme=light] .status-normal{color:var(--brand-blue);background-color:#00334914;border-color:#0033492e}.status-partial{color:var(--status-partial);background-color:#ffc1071a;border:1px solid #ffc1074d}.app-layout{min-height:100vh;display:flex}.sidebar{background-color:var(--bg-secondary);border-right:1px solid var(--border-color);flex-direction:column;flex-shrink:0;width:250px;padding:2rem 1rem;display:flex}.sidebar-brand{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:2rem;padding-left:1rem;display:flex}.sidebar-brand img{max-width:150px;height:auto}.sidebar-mobile-toggle,.sidebar-mobile-close{color:var(--text-primary);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;display:none}.sidebar-mobile-toggle{z-index:50;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--border-radius);justify-content:center;align-items:center;width:42px;height:42px;display:none;position:fixed;top:.85rem;left:.85rem;box-shadow:0 2px 8px #00000026}.hamburger-icon{flex-direction:column;gap:4px;width:22px;display:inline-flex}.hamburger-icon span{background-color:var(--text-primary);border-radius:2px;height:2px;display:block}.sidebar-mobile-close{color:var(--text-secondary);border-radius:50%;width:32px;height:32px;font-size:1.8rem;line-height:1}.sidebar-mobile-close:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.sidebar-backdrop{z-index:80;background-color:#0000008c;animation:.2s ease-out backdrop-fade;position:fixed;inset:0}@keyframes backdrop-fade{0%{opacity:0}to{opacity:1}}@media (max-width:768px){.app-layout{flex-direction:column}.sidebar-mobile-toggle,.sidebar-mobile-close{display:inline-flex}.sidebar{z-index:90;width:80vw;max-width:300px;transition:transform .25s ease-out;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%);box-shadow:4px 0 24px #00000040}.sidebar.sidebar-mobile-open{transform:translate(0)}.main-content{padding:4.5rem 1rem 2rem!important}}.nav-link{border-radius:var(--border-radius);color:var(--text-secondary);transition:all var(--transition-speed);margin-bottom:.5rem;padding:.75rem 1rem;font-weight:500;display:block}.nav-link:hover{color:var(--text-primary);background-color:#e0004d14}.nav-link.active{color:var(--text-primary);border-left:3px solid var(--accent-color);background-color:#e0004d24;font-weight:700}.main-content{flex:1;padding:2rem 3rem;overflow-y:auto}.main-content-login{flex:1;overflow-y:auto}.page-header{justify-content:space-between;align-items:center;margin-bottom:2rem;display:flex}
