body{color:#17202a;background:#f4f6f8;margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input{font:inherit}button{cursor:pointer}.login-page{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:#fff;border-radius:12px;width:100%;max-width:420px;padding:36px;box-shadow:0 12px 35px #00000014}.login-card h1{margin-top:0;margin-bottom:8px}.subtitle{color:#667085;margin-bottom:28px}.login-card form{flex-direction:column;gap:10px;display:flex}.login-card input{border:1px solid #d0d5dd;border-radius:6px;width:100%;margin-bottom:10px;padding:12px}.login-card button{color:#fff;background:#17202a;border:none;border-radius:6px;margin-top:10px;padding:12px}.login-card button:disabled{opacity:.6;cursor:default}.error{color:#b42318;background:#fef3f2;border:1px solid #fecdca;border-radius:6px;padding:10px}.dashboard{min-height:100vh}.topbar{background:#fff;border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:18px 32px;display:flex}.topbar h1{margin:0;font-size:21px}.topbar span{color:#667085;font-size:13px}.role{color:#667085;font-size:12px}.user-area button{background:#fff;border:1px solid #d0d5dd;border-radius:6px;padding:8px 14px}main{max-width:1200px;margin:auto;padding:32px}.cards{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;display:grid}.card{background:#fff;border:1px solid #e5e7eb;border-radius:10px;padding:24px}.card h3{margin-top:0}.card p{color:#667085;min-height:48px}.card button{color:#fff;background:#17202a;border:none;border-radius:6px;padding:9px 14px}.card button:disabled{opacity:.45;cursor:default}.jobs-table-wrapper{background:#fff;border:1px solid #e5e7eb;border-radius:10px;overflow-x:auto}.jobs-table{border-collapse:collapse;width:100%}.jobs-table th,.jobs-table td{text-align:left;border-bottom:1px solid #e5e7eb;padding:14px 16px}.jobs-table th{background:#f8fafc;font-size:13px}.jobs-table td{font-size:14px}.jobs-table button{color:#fff;background:#17202a;border:none;border-radius:6px;padding:7px 12px}.success{color:#067647;background:#ecfdf3;border:1px solid #abefc6;border-radius:6px;padding:10px}.secondary-button{color:#17202a!important;background:#fff!important;border:1px solid #d0d5dd!important}.admin-tabs{gap:8px;margin-bottom:24px;display:flex}.admin-tab{color:#344054;background:#fff;border:1px solid #d0d5dd;border-radius:6px;padding:10px 18px}.admin-tab.active{color:#fff;background:#17202a}.admin-toolbar{flex-wrap:wrap;gap:10px;margin-bottom:16px;display:flex}.admin-toolbar input,.admin-toolbar select{border:1px solid #d0d5dd;border-radius:6px;padding:9px 12px}.admin-toolbar input{min-width:250px}.pagination{justify-content:flex-end;align-items:center;gap:12px;margin-top:16px;display:flex}.danger-button{margin-left:8px;background:#b42318!important}.admin-role-label{color:#667085;margin-top:-8px;margin-bottom:20px;font-size:14px}.model-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin-top:24px;display:grid}.model-card{background:#fff;border:1px solid #e4e7ec;border-radius:10px;padding:20px}.model-card h2{margin-top:0}:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;background:#f5f7fb;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}html,body,#root{min-height:100%;margin:0}body{color:#172033;background:linear-gradient(#f8fafc 0%,#eef3f8 100%);min-width:320px;min-height:100vh}h1,h2,h3,h4{color:#10233f;margin-top:0}h1{font-size:2rem;font-weight:750}p{color:#26384a}small,.muted{color:#5d6b7e}button{color:#fff;cursor:pointer;background:#175f8f;border:none;border-radius:10px;padding:10px 16px;font-size:14px;font-weight:650;transition:transform .15s,box-shadow .15s,background .15s}input,select,textarea{color:#172033;background:#fff;border:1px solid #cbd5e1;border-radius:9px;width:100%;padding:10px 12px;font-size:14px}input::placeholder,textarea::placeholder{color:#718096}table{border-collapse:collapse;background:#fff;border-radius:12px;width:100%;overflow:hidden}th{color:#17324d;text-align:left;background:#eaf1f6;font-weight:700}th,td{border-bottom:1px solid #e5eaf0;padding:12px 14px}td{color:#26384a}tr:hover td{background:#f8fbfd}.page-subtitle{color:#59697b;font-size:15px}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-main:#f4f7fb;--bg-card:#fff;--bg-soft:#eef4f8;--text-main:#1e293b;--text-heading:#102a43;--text-secondary:#526579;--text-muted:#64748b;--primary:#176b87;--primary-hover:#12556c;--primary-soft:#e8f2f5;--border:#dbe4ec;--success:#16704a;--warning:#9a6700;--danger:#b42318;font-synthesis:none;text-rendering:optimizelegibility;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{min-height:100vh;color:var(--text-main);background:linear-gradient(#f8fafc 0%,#eef3f8 100%)}h1,h2,h3,h4,h5,h6{color:var(--text-heading)}h1{letter-spacing:-.02em;font-size:2rem;font-weight:750}h2{font-size:1.5rem;font-weight:700}h3{font-size:1.18rem;font-weight:700}p{color:var(--text-main);line-height:1.6}label{color:var(--text-main);font-weight:600}small{color:var(--text-secondary)}a{color:var(--primary);font-weight:600;text-decoration:none}a:hover{color:var(--primary-hover);text-decoration:underline}button{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:9px;padding:10px 16px;font-family:inherit;font-size:14px;font-weight:650;transition:background .15s,box-shadow .15s,transform .15s}button:hover{background:var(--primary-hover);transform:translateY(-1px);box-shadow:0 5px 14px #176b872e}button:active{transform:translateY(0)}button:disabled{color:#fff;cursor:not-allowed;box-shadow:none;background:#94a3b8;transform:none}input,select,textarea{width:100%;color:var(--text-main);background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:10px 12px;font-family:inherit;font-size:14px}input::placeholder,textarea::placeholder{color:#718096;opacity:1}input:focus,select:focus,textarea:focus{border-color:var(--primary);outline:none;box-shadow:0 0 0 3px #176b871f}table{border-collapse:collapse;border:1px solid var(--border);background:#fff;border-radius:10px;width:100%;overflow:hidden}thead{background:#eaf1f6}th{color:#17324d;text-align:left;border-bottom:1px solid var(--border);padding:12px 14px;font-weight:700}td{color:#26384a;border-bottom:1px solid #e5eaf0;padding:12px 14px}tbody tr:hover{background:#f8fbfd}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:14px;padding:22px;box-shadow:0 6px 22px #1f30440f}.page-shell{width:min(1200px,100% - 40px);margin:0 auto;padding:30px 0 50px}.page-header{margin-bottom:25px}.page-subtitle{color:var(--text-secondary);margin-top:-8px;font-size:15px}.muted{color:var(--text-secondary)}.status-success{color:var(--success);font-weight:700}.status-warning{color:var(--warning);font-weight:700}.status-error{color:var(--danger);font-weight:700}.error-message{color:#b42318;background:#fef3f2;border:1px solid #fecdca;border-radius:8px;padding:12px 14px;font-weight:600}.success-message{color:#16704a;background:#ecfdf3;border:1px solid #abefc6;border-radius:8px;padding:12px 14px;font-weight:600}@media (width<=700px){.page-shell{width:calc(100% - 24px);padding-top:20px}h1{font-size:1.7rem}table{font-size:13px}th,td{padding:9px}}.model-card{background:#fff;border:1px solid #dbe4ec;border-radius:14px;margin-bottom:18px;padding:22px;box-shadow:0 6px 22px #1f30440f}.model-card h2{color:#102a43;margin-top:0;margin-bottom:10px}.model-card p{color:#526579}.model-card:hover{border-color:#b8ccd8;box-shadow:0 8px 26px #1f30441a}.dashboard{color:#26384a;width:min(1200px,100% - 40px);margin:0 auto;padding:30px 0 50px}.topbar h1{color:#102a43;margin:0;font-size:30px;font-weight:750}.topbar span{color:#526579;margin-top:5px;font-size:14px;display:block}.user-area strong{color:#1e293b;font-size:14px}.role{color:#176b87;text-transform:uppercase;letter-spacing:.05em;margin-top:4px;font-size:12px;font-weight:700}.dashboard-section{margin-top:24px}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px;margin-top:20px;display:grid}.dashboard-card{background:#fff;border:1px solid #dbe4ec;border-radius:14px;padding:22px;transition:transform .15s,box-shadow .15s,border-color .15s;box-shadow:0 6px 22px #1f30440f}.dashboard-card:hover{border-color:#b8ccd8;transform:translateY(-2px);box-shadow:0 9px 28px #1f30441a}.dashboard-card h2,.dashboard-card h3{color:#102a43;margin-top:0}.dashboard-card p{color:#526579}@media (width<=700px){.topbar{flex-direction:column;align-items:flex-start}.user-area{justify-content:space-between;width:100%}.topbar h1{font-size:24px}}.jobs-table-wrapper{background:#fff;border:1px solid #dbe4ec;border-radius:14px;margin-top:20px;overflow-x:auto;box-shadow:0 6px 22px #1f30440f}.jobs-table{border-collapse:collapse;background:#fff;width:100%}.jobs-table thead{background:#eaf1f6}.jobs-table th{color:#17324d;text-align:left;white-space:nowrap;border-bottom:1px solid #dbe4ec;padding:13px 14px;font-weight:700}.jobs-table td{color:#26384a;vertical-align:middle;border-bottom:1px solid #e5eaf0;padding:13px 14px}.jobs-table tbody tr:hover{background:#f8fbfd}.error{color:#b42318;background:#fef3f2;border:1px solid #fecdca;border-radius:9px;margin:16px 0;padding:12px 14px;font-weight:600}.card{background:#fff;border:1px solid #dbe4ec;border-radius:14px;margin-top:20px;padding:22px;box-shadow:0 6px 22px #1f30440f}.card p{color:#526579;margin:0}.jobs-table td:nth-child(4){font-weight:700}@media (width<=700px){.jobs-table{min-width:720px}.jobs-table th,.jobs-table td{padding:10px;font-size:13px}}.admin-role-label{color:#526579;margin:6px 0 2px;font-size:14px}.admin-role-label strong{color:#176b87}.admin-tabs{background:#eaf1f6;border:1px solid #dbe4ec;border-radius:12px;gap:10px;width:fit-content;margin-bottom:22px;padding:6px;display:flex}.admin-tab{color:#526579;box-shadow:none;background:0 0;padding:9px 18px}.admin-tab:hover{color:#17324d;box-shadow:none;background:#dceaf0;transform:none}.admin-tab.active{color:#fff;background:#176b87;box-shadow:0 4px 12px #176b872e}.admin-table-wrapper{background:#fff;border:1px solid #dbe4ec;border-radius:14px;margin-top:18px;overflow-x:auto;box-shadow:0 6px 22px #1f30440f}.admin-table{border-collapse:collapse;background:#fff;width:100%}.admin-table thead{background:#eaf1f6}.admin-table th{color:#17324d;text-align:left;white-space:nowrap;border-bottom:1px solid #dbe4ec;padding:13px 14px;font-weight:700}.admin-table td{color:#26384a;vertical-align:middle;border-bottom:1px solid #e5eaf0;padding:13px 14px}.admin-table tbody tr:hover{background:#f8fbfd}.admin-actions button{padding:7px 11px;font-size:12px}.admin-role{color:#176b87;font-weight:700}.admin-active{color:#16704a;font-weight:700}.admin-inactive{color:#b42318;font-weight:700}@media (width<=700px){.admin-tabs{width:100%}.admin-tab{flex:1}.admin-table{min-width:850px}.admin-table th,.admin-table td{padding:10px;font-size:13px}}.card form{flex-direction:column;gap:14px;display:flex}.card form h2{color:#102a43;margin-top:18px;margin-bottom:4px;font-size:18px;font-weight:700}.card form h2:first-child{margin-top:0}.card form label{color:#26384a;font-size:14px;font-weight:600}.card input[type=file]{color:#26384a;background:#f8fafc;border:1px dashed #b8c8d6;border-radius:9px;width:100%;padding:11px}.card input[type=file]:hover{background:#f2f8fa;border-color:#176b87}.card input[type=radio]{accent-color:#176b87;width:auto;box-shadow:none;margin:0 8px 0 0}.card label:has(input[type=radio]){cursor:pointer;background:#f8fafc;border:1px solid #dbe4ec;border-radius:8px;align-items:center;width:fit-content;padding:8px 12px;display:flex}.card label:has(input[type=radio]:checked){color:#12556c;background:#e8f2f5;border-color:#176b87}.card input[type=number],.card select{max-width:260px}.card form button[type=submit]{align-self:flex-start;min-width:160px;margin-top:14px;padding:11px 20px}.card form p{color:#526579;margin:2px 0;font-size:14px;line-height:1.5}@media (width<=700px){.card input[type=number],.card select{max-width:100%}.card form button[type=submit]{width:100%}}.card h2{color:#102a43;margin-top:0;margin-bottom:16px;font-size:20px;font-weight:700}.card p{color:#26384a;margin:8px 0;line-height:1.5}.card p strong{color:#102a43}.result-actions{flex-wrap:wrap;gap:10px;margin-top:20px;display:flex}.result-status{color:#176b87;font-weight:700}@media (width<=700px){.result-actions{flex-direction:column}.result-actions button{width:100%}.result-image-wrapper{padding:10px}}.dashboard-intro{background:linear-gradient(135deg,#102a43 0%,#176b87 100%);border-radius:16px;margin-bottom:26px;padding:24px 26px;box-shadow:0 8px 26px #102a4324}.dashboard-intro h2{color:#fff;margin:0 0 8px;font-size:24px}.dashboard-intro p{color:#e6f1f5;margin:0;font-size:15px}.dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;display:grid}.dashboard-action-card{text-align:left;cursor:pointer;background:#fff;border:1px solid #dbe4ec;border-radius:15px;align-items:flex-start;gap:16px;min-height:150px;padding:22px;transition:transform .16s,box-shadow .16s,border-color .16s;display:flex;box-shadow:0 6px 22px #1f30440f}.dashboard-action-card h3{color:#102a43;margin:2px 0 8px;font-size:18px}.dashboard-action-card p{color:#526579;margin:0;font-size:14px;line-height:1.55}.dashboard-card-icon{color:#176b87;background:#e8f2f5;border-radius:11px;flex:0 0 44px;justify-content:center;align-items:center;width:44px;height:44px;font-size:18px;font-weight:800;display:flex}@media (width<=700px){.dashboard-grid{grid-template-columns:1fr}.dashboard-intro{padding:20px}.dashboard-action-card{min-height:auto}}.models-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:22px;display:grid}.model-card{background:#fff;border:1px solid #dbe4ec;border-radius:15px;flex-direction:column;gap:16px;min-height:220px;padding:22px;transition:transform .16s,box-shadow .16s,border-color .16s;display:flex;box-shadow:0 6px 22px #1f30440f}.model-card:hover{border-color:#9fbfcd;transform:translateY(-3px);box-shadow:0 10px 28px #1f30441c}.model-card-header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.model-card h2{color:#102a43;margin:0;font-size:21px}.model-version{color:#526579;margin-top:5px;font-size:13px;font-weight:600;display:inline-block}.model-status{color:#16704a;background:#ecfdf3;border:1px solid #abefc6;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:700}.model-description{color:#526579;flex:1;margin:0;line-height:1.6}.model-card button{align-self:flex-start}.job-status{text-transform:capitalize;border-radius:999px;align-items:center;padding:5px 9px;font-size:12px;font-weight:700;display:inline-flex}.job-status-queued{color:#475569;background:#f1f5f9;border:1px solid #cbd5e1}.job-status-running{color:#175cd3;background:#eff8ff;border:1px solid #b2ddff}.job-status-completed{color:#16704a;background:#ecfdf3;border:1px solid #abefc6}.job-status-failed{color:#b42318;background:#fef3f2;border:1px solid #fecdca}.job-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.job-view-button{color:#fff;background:#176b87}.job-view-button:hover{background:#12556c}.job-download-button{color:#176b87;background:#fff;border:1px solid #176b87}.job-download-button:hover{color:#12556c;background:#e8f2f5;border-color:#12556c}.form-section{border-bottom:1px solid #e5eaf0;padding:20px 0}.form-section:first-child{padding-top:0}.form-section:last-of-type{border-bottom:none}.form-section h2{color:#102a43;margin:0 0 6px;font-size:18px}.form-section-help{color:#526579;max-width:680px;margin:0 0 16px;font-size:14px;line-height:1.5}.form-field{flex-direction:column;gap:7px;max-width:320px;display:flex}.form-field label{color:#26384a;font-weight:650}.radio-group{flex-wrap:wrap;gap:10px;display:flex}.radio-group label{color:#26384a;cursor:pointer;background:#f8fafc;border:1px solid #dbe4ec;border-radius:9px;align-items:center;gap:7px;padding:10px 14px;display:flex}.radio-group label:has(input[type=radio]:checked){color:#12556c;background:#e8f2f5;border-color:#176b87}.radio-group input[type=radio]{accent-color:#176b87;width:auto;margin:0}.card form button[type=submit]{min-width:180px;margin-top:20px;padding:12px 22px;font-size:15px}@media (width<=700px){.radio-group{flex-direction:column}.radio-group label{width:100%}.form-field{max-width:100%}.card form button[type=submit]{width:100%}}.approval-status{text-transform:capitalize;border-radius:999px;align-items:center;padding:5px 9px;font-size:12px;font-weight:700;display:inline-flex}.approval-pending{color:#c4320a;background:#fff6ed;border:1px solid #ffd6ae}.approval-approved{color:#16704a;background:#ecfdf3;border:1px solid #abefc6}.approval-rejected{color:#b42318;background:#fef3f2;border:1px solid #fecdca}.admin-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin:16px 0;display:flex}.admin-toolbar input{width:260px}.admin-toolbar select{width:auto;min-width:140px}.pagination{color:#526579;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;margin-top:18px;display:flex}.admin-actions{flex-wrap:wrap;gap:7px;display:flex}.approve-button{color:#fff;background:#16704a}.approve-button:hover{background:#125c3d}.reject-button{color:#fff;background:#f79009}.reject-button:hover{background:#dc6803}.delete-button{color:#fff;background:#b42318}.delete-button:hover{background:#912018}@media (width<=700px){.admin-toolbar{align-items:stretch}.admin-toolbar input,.admin-toolbar select,.admin-toolbar button{width:100%}.pagination{justify-content:center}}.result-info-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin-top:8px;display:grid}.result-info-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:6px;padding:14px 16px;display:flex}.result-info-label{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:700}.result-info-value{color:#102a43;word-break:break-word;font-size:14px;font-weight:650}.result-image-wrapper{background:#fff;border:1px solid #dbe4ec;border-radius:15px;margin-top:24px;padding:20px;overflow:hidden;box-shadow:0 8px 26px #1f304412}.result-image-header{margin-bottom:16px}.result-image-header h2{color:#102a43;margin:0 0 6px;font-size:20px}.result-image-header p{color:#526579;margin:0;font-size:14px}.result-image-wrapper img{border-radius:10px;width:100%;height:auto;display:block}.result-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:20px;display:flex}.result-actions button{min-width:150px}@media (width<=700px){.result-info-grid{grid-template-columns:1fr}.result-image-wrapper{padding:10px}.result-actions{flex-direction:column;align-items:stretch}.result-actions button{width:100%}}.auth-page{background:linear-gradient(135deg,#edf4f7 0%,#f8fafc 45%,#e7f0f4 100%);justify-content:center;align-items:center;min-height:100vh;padding:32px 20px;display:flex}.auth-card{background:#fff;border:1px solid #dbe4ec;border-radius:18px;width:100%;max-width:440px;padding:34px;box-shadow:0 18px 50px #1f30441f}.auth-brand{text-align:center;margin-bottom:28px}.auth-logo{color:#fff;letter-spacing:.12em;background:linear-gradient(135deg,#0f4c5c,#2a9d8f);border-radius:10px;justify-content:center;align-items:center;min-width:72px;height:38px;margin-bottom:16px;padding:0 14px;font-size:15px;font-weight:800;display:inline-flex}.auth-brand h1{color:#102a43;margin:0 0 7px;font-size:27px;font-weight:750}.auth-brand p{color:#526579;margin:0;font-size:14px;line-height:1.5}.auth-heading{margin-bottom:20px}.auth-heading h2{color:#102a43;margin:0 0 5px;font-size:20px}.auth-heading p{color:#64748b;margin:0;font-size:14px}.auth-form{flex-direction:column;gap:16px;display:flex}.auth-field{flex-direction:column;gap:7px;display:flex}.auth-field label{color:#26384a;font-size:14px;font-weight:650}.auth-field input{color:#1e293b;box-sizing:border-box;background:#fff;border:1px solid #cbd5e1;border-radius:9px;width:100%;padding:11px 12px;font-size:14px}.auth-field input:focus{border-color:#176b87;outline:none;box-shadow:0 0 0 3px #176b871f}.auth-field input::placeholder{color:#94a3b8}.auth-submit{color:#fff;background:#176b87;border:none;border-radius:9px;width:100%;margin-top:4px;padding:12px 18px;font-size:15px;font-weight:700}.auth-submit:hover:not(:disabled){background:#12556c}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-footer{color:#64748b;justify-content:center;align-items:center;gap:6px;margin-top:6px;font-size:13px;display:flex}.auth-link-button{color:#176b87;box-shadow:none;background:0 0;border:none;padding:0;font-size:13px;font-weight:700}.auth-link-button:hover{color:#12556c;box-shadow:none;background:0 0;text-decoration:underline;transform:none}@media (width<=600px){.auth-page{padding:20px 14px}.auth-card{padding:26px 20px}.auth-brand h1{font-size:24px}}.success{color:#16704a;background:#ecfdf3;border:1px solid #abefc6;border-radius:9px;padding:12px 14px;font-size:14px;font-weight:600}.field-help{color:#64748b;margin:-2px 0 0;font-size:12px;line-height:1.4}.topbar{background:#fff;border:1px solid #dbe4ec;border-radius:14px;justify-content:space-between;align-items:center;gap:24px;margin-bottom:26px;padding:18px 22px;display:flex;box-shadow:0 6px 22px #1f30440f}.topbar>div:first-child{min-width:0}.topbar h1{color:#102a43;margin:0;font-size:27px;font-weight:760;line-height:1.2}.topbar span{color:#526579;margin-top:5px;font-size:14px;line-height:1.4;display:block}.topbar>button{color:#176b87;min-width:88px;box-shadow:none;background:#fff;border:1px solid #176b87;flex-shrink:0}.topbar>button:hover{color:#12556c;box-shadow:none;background:#e8f2f5;border-color:#12556c;transform:none}.user-area{align-items:center;gap:18px;display:flex}.user-area>div{text-align:right}.user-area strong{color:#1e293b;font-size:14px;font-weight:700;display:block}.user-area .role{color:#176b87;text-transform:uppercase;letter-spacing:.06em;margin-top:4px;font-size:11px;font-weight:800}.user-area>button{color:#176b87;background:#fff;border:1px solid #176b87;min-width:88px}.user-area>button:hover{color:#12556c;background:#e8f2f5}.page-shell,.dashboard{width:min(1200px,100% - 40px);margin:0 auto;padding-top:28px;padding-bottom:50px}@media (width<=700px){.page-shell,.dashboard{width:min(100% - 28px,1200px);padding-top:18px}.topbar{flex-direction:column;align-items:flex-start;gap:16px;padding:18px}.topbar h1{font-size:23px}.topbar>button{width:100%}.user-area{justify-content:space-between;width:100%}.user-area>div{text-align:left}.user-area>button{width:auto}}.dashboard-action-card{text-align:left;cursor:pointer;background:#fff;border:1px solid #dbe4ec;border-radius:16px;flex-direction:column;justify-content:space-between;min-height:190px;padding:22px;transition:transform .16s,box-shadow .16s,border-color .16s;display:flex;box-shadow:0 6px 22px #1f30440f}.dashboard-action-card:hover{background:#fff;border-color:#9fbfcd;transform:translateY(-3px);box-shadow:0 12px 30px #1f30441f}.dashboard-card-top{justify-content:space-between;align-items:center;display:flex}.dashboard-card-content{margin-top:24px}.dashboard-card-content h3{color:#102a43;margin:0 0 8px;font-size:19px}.dashboard-card-content p{color:#526579;margin:0;font-size:14px;line-height:1.55}.dashboard-card-arrow{color:#176b87;font-size:22px;font-weight:700;transition:transform .16s}.dashboard-action-card:hover .dashboard-card-arrow{transform:translate(4px)}.model-title-group{align-items:center;gap:14px;display:flex}.model-icon{color:#fff;background:linear-gradient(135deg,#0f4c5c,#2a9d8f);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;font-size:19px;font-weight:800;display:flex}.model-meta{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.model-meta span{color:#526579;background:#f1f5f9;border:1px solid #dbe4ec;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:650}.model-card-footer{justify-content:space-between;align-items:center;gap:14px;margin-top:auto;display:flex}.model-card-footer button{margin:0}.model-open-arrow{color:#176b87;font-size:22px;font-weight:700;transition:transform .16s}.model-card:hover .model-open-arrow{transform:translate(4px)}.selected-file{background:#f8fafc;border:1px solid #dbe4ec;border-radius:10px;align-items:center;gap:13px;max-width:560px;margin-top:14px;padding:13px 15px;display:flex}.selected-file-icon{color:#176b87;background:#e8f2f5;border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:11px;font-weight:800;display:flex}.selected-file-info{flex-direction:column;gap:2px;min-width:0;display:flex}.selected-file-label{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:700}.selected-file-info strong{color:#102a43;text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.selected-file-info>span:last-child{color:#64748b;font-size:12px}.run-summary{background:#f8fafc;border:1px solid #dbe4ec;border-radius:12px;margin-top:20px;padding:18px}.run-summary-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px;display:flex}.run-summary-header h2{color:#102a43;margin:0;font-size:17px}.run-ready-badge{color:#16704a;background:#ecfdf3;border:1px solid #abefc6;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:750}.run-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.run-summary-item{flex-direction:column;gap:5px;min-width:0;display:flex}.run-summary-item span{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:700}.run-summary-item strong{color:#26384a;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}@media (width<=700px){.run-summary-grid{grid-template-columns:1fr}.selected-file{max-width:100%}}.run-waiting-badge{color:#64748b;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:999px;padding:5px 9px;font-size:11px;font-weight:750}.run-submit-area{flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px;display:flex}.run-submit-button{color:#fff;background:#176b87;border:1px solid #176b87;min-width:190px;padding:12px 22px;font-size:15px;font-weight:700}.run-submit-button:hover:not(:disabled){background:#12556c;border-color:#12556c}.run-submit-button:disabled{color:#64748b;cursor:not-allowed;box-shadow:none;background:#cbd5e1;border-color:#cbd5e1;transform:none}.run-submit-hint{color:#64748b;font-size:13px}.run-progress{background:#eff8ff;border:1px solid #b2ddff;border-radius:10px;align-items:center;gap:13px;margin-top:18px;padding:14px 16px;display:flex}.run-progress>div:last-child{flex-direction:column;gap:3px;display:flex}.run-progress strong{color:#17324d;font-size:14px}.run-progress span{color:#526579;font-size:12px}.run-progress-spinner{border:3px solid #cfe8f3;border-top-color:#176b87;border-radius:50%;flex-shrink:0;width:20px;height:20px;animation:.8s linear infinite aeromig-spin}@keyframes aeromig-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.run-progress-spinner{animation:none}}@media (width<=700px){.run-submit-area{flex-direction:column;align-items:stretch}.run-submit-button{width:100%}}.job-bulk-toolbar{color:#526579;background:#f8fafc;border:1px solid #dbe4ec;border-radius:10px;flex-wrap:wrap;align-items:center;gap:12px;margin:18px 0;padding:12px 14px;font-size:13px;display:flex}.job-select-all{color:#26384a;align-items:center;gap:7px;font-size:13px;font-weight:650;display:flex}.job-select-all input,.select-column input{accent-color:#176b87;width:auto;margin:0}.select-column{text-align:center;width:68px}.job-delete-button,.bulk-delete-button{color:#b42318;background:#fff;border:1px solid #f04438}.job-delete-button:hover,.bulk-delete-button:hover:not(:disabled){color:#912018;background:#fef3f2;border-color:#d92d20}.bulk-delete-button:disabled{color:#94a3b8;cursor:not-allowed;box-shadow:none;background:#f1f5f9;border-color:#cbd5e1;transform:none}.job-status-cancelled{color:#475467;background:#f2f4f7;border:1px solid #d0d5dd}.aeromig-file-selectors{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:12px;display:grid}.aeromig-file-selectors>div{flex-direction:column;gap:7px;display:flex}.aeromig-file-selectors label{color:#26384a;font-size:13px;font-weight:700}.selected-files-panel{border:1px solid #dbe4ec;border-radius:12px;margin-top:18px;overflow:hidden}.selected-files-header{background:#f1f5f9;border-bottom:1px solid #dbe4ec;justify-content:space-between;align-items:center;gap:16px;padding:13px 15px;display:flex}.selected-files-header>div{flex-direction:column;gap:3px;display:flex}.selected-files-header strong{color:#102a43;font-size:14px}.selected-files-header span{color:#64748b;font-size:12px}.clear-files-button{color:#526579;background:#fff;border:1px solid #cbd5e1;font-size:12px}.selected-files-list{background:#fff;max-height:300px;overflow-y:auto}.selected-file-row{border-bottom:1px solid #eef2f6;align-items:center;gap:12px;padding:10px 14px;display:flex}.selected-file-row:last-child{border-bottom:none}@media (width<=700px){.aeromig-file-selectors{grid-template-columns:1fr}}.batch-result{background:#f8fafc;border:1px solid #dbe4ec;border-radius:11px;margin-top:18px;padding:16px}.batch-result-summary{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.batch-result-summary strong{color:#102a43}.batch-result-summary span{color:#16704a;background:#ecfdf3;border:1px solid #abefc6;border-radius:999px;padding:4px 8px;font-size:12px;font-weight:700}.batch-result-summary .batch-failed-count{color:#b42318;background:#fef3f2;border-color:#fecdca}.batch-failed-files{flex-direction:column;gap:8px;margin-top:14px;display:flex}.batch-failed-files>strong{color:#102a43;font-size:13px}.batch-failed-row{color:#526579;background:#fff;border:1px solid #e5eaf0;border-radius:7px;justify-content:space-between;gap:16px;padding:8px 10px;font-size:12px;display:flex}.batch-failed-row span:first-child{color:#26384a;font-weight:650}@media (width<=700px){.batch-failed-row{flex-direction:column;gap:3px}}.batch-monitor{background:#fff;border:1px solid #dbe4ec;border-radius:12px;margin-top:20px;padding:18px;box-shadow:0 6px 20px #1f30440d}.batch-monitor-header{justify-content:space-between;align-items:center;gap:16px;display:flex}.batch-monitor-header h3{color:#102a43;margin:0 0 4px;font-size:17px}.batch-monitor-header p{color:#64748b;margin:0;font-size:12px}.batch-monitor-header>strong{color:#176b87;font-size:18px}.batch-progress-track{background:#e5eaf0;border-radius:999px;width:100%;height:10px;margin-top:14px;overflow:hidden}.batch-progress-fill{background:#176b87;border-radius:999px;height:100%;transition:width .35s}.batch-status-counts{color:#526579;flex-wrap:wrap;gap:14px;margin-top:12px;font-size:12px;font-weight:650;display:flex}.batch-running-now{background:#eff8ff;border:1px solid #b2ddff;border-radius:9px;flex-direction:column;gap:4px;margin-top:16px;padding:12px 14px;display:flex}.batch-running-now span{color:#526579;text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:700}.batch-running-now strong{color:#17324d;font-size:14px}.batch-job-list{border:1px solid #e5eaf0;border-radius:9px;max-height:360px;margin-top:16px;overflow-y:auto}.batch-job-row{border-bottom:1px solid #eef2f6;justify-content:space-between;align-items:center;gap:14px;padding:10px 12px;display:flex}.batch-job-row:last-child{border-bottom:none}.batch-job-file{color:#26384a;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600;overflow:hidden}@media (width<=700px){.batch-job-row{flex-direction:column;align-items:flex-start}}.smear-status-row{justify-content:space-between;align-items:center;gap:20px;width:100%;margin-bottom:18px;font-size:16px;display:flex}.smear-processed{color:#26384a}.smear-processed strong{color:#102a43}.smear-event{border-radius:999px;align-items:center;gap:7px;padding:8px 14px;font-weight:700;display:inline-flex;box-shadow:0 4px 14px #1f304414}.smear-event-label{font-weight:600}.smear-event-pending{color:#64748b;background:#f1f5f9;border:1px solid #cbd5e1}.smear-event-ia{color:#8a4b00;background:linear-gradient(135deg,#fff4cc,#ffe0a3);border:1px solid #f4b942}.smear-event-ib{color:#16704a;background:#ecfdf3;border:1px solid #abefc6}.smear-event-ii{color:#175cd3;background:#eff8ff;border:1px solid #b2ddff}.smear-event-nonevent{color:#475467;background:#f2f4f7;border:1px solid #d0d5dd}.smear-celebration{margin-left:4px;animation:1.1s ease-in-out infinite alternate smear-celebrate;display:inline-block}@keyframes smear-celebrate{0%{transform:translateY(0)scale(1)}to{transform:translateY(-3px)scale(1.08)}}@media (width<=700px){.smear-status-row{flex-direction:column;align-items:stretch}.smear-event{align-self:flex-start}}
