@import "https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700&family=Inter:wght@400;500;600&display=swap";:root{--primary-color:#0d2847;--secondary-color:#f7fbff;--accent-color:#3b82f6;--accent-hover:#2563eb;--text-dark:#0f172a;--text-light:#64748b;--border-color:#e2e8f0;--success-color:#10b981;--warning-color:#f59e0b;--danger-color:#ef4444;--info-color:#3b82f6;--bg-success:#ecfdf5;--bg-warning:#fffbeb;--bg-danger:#fef2f2;--bg-info:#eff6ff;--font-heading:"Outfit", sans-serif;--font-body:"Inter", sans-serif;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000000d, 0 2px 4px -1px #00000008;--shadow-lg:0 10px 15px -3px #0000000d, 0 4px 6px -2px #00000006;--shadow-glow:0 0 20px #3b82f626;--radius-md:12px;--radius-lg:20px}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-body);color:var(--text-dark);background-color:var(--secondary-color);-webkit-font-smoothing:antialiased;background-image:radial-gradient(at 0 0,#dbedff 0,#0000 50%),radial-gradient(at 50% 0,#ccecff 0,#0000 50%),radial-gradient(at 100% 0,#d6e6ff 0,#0000 50%);background-attachment:fixed;font-size:16px;line-height:1.6}h1,h2,h3,h4{font-family:var(--font-heading);color:var(--primary-color);letter-spacing:-.02em;margin-bottom:.5em;font-weight:600}input,select{font-family:var(--font-body);border:1px solid var(--border-color);border-radius:var(--radius-md);box-sizing:border-box;width:100%;max-width:100%;color:var(--text-dark);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-overflow:ellipsis;background:#fffc;padding:.8rem 1rem;font-size:1rem;transition:all .3s;overflow:hidden}input:focus,select:focus{border-color:var(--accent-color);outline:none;transform:translateY(-1px);box-shadow:0 0 0 4px #3b82f626}.container{max-width:1200px;margin:0 auto;padding:1rem}@media (width>=768px){.container{padding:2.5rem}}.card{-webkit-backdrop-filter:blur(16px);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);background:#ffffffe6;border:1px solid #fff9;margin-bottom:1.5rem;padding:1.5rem;transition:transform .3s,box-shadow .3s}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}@media (width>=768px){.card{padding:2.5rem}}.card-header{border-bottom:1px dashed var(--border-color);margin-bottom:1.5rem;padding-bottom:1rem}.grid{gap:1.5rem;display:grid}.grid-cols-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}.grid-cols-3{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.space-between{justify-content:space-between}.gap-4{gap:1rem}.form-group{flex-direction:column;gap:.4rem;display:flex}label{color:var(--text-dark);font-size:.95rem;font-weight:500}.btn-primary{background:linear-gradient(135deg, var(--accent-color) 0%, var(--primary-color) 100%);color:#fff;border-radius:var(--radius-lg);cursor:pointer;box-shadow:var(--shadow-md);border:none;justify-content:center;align-items:center;gap:.75rem;padding:1.1rem 2rem;font-size:1.125rem;font-weight:600;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex}.btn-primary:not(:disabled):hover{box-shadow:var(--shadow-glow);transform:translateY(-3px)scale(1.01)}.btn-primary:not(:disabled):active{transform:translateY(1px)}.btn-primary:disabled{opacity:.7;cursor:not-allowed;filter:grayscale(.4)}.collapsible-header{border-radius:var(--radius-md);cursor:pointer;background:#f1f5f999;border:1px solid #0000;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding:1.25rem;font-weight:600;transition:all .2s;display:flex}.collapsible-header:hover{border-color:var(--border-color);background:#f1f5f9e6}.collapsible-content{border:1px solid var(--border-color);border-radius:0 0 var(--radius-md) var(--radius-md);background:#ffffff80;margin-top:-.75rem;margin-bottom:2rem;padding:1.5rem;animation:.3s cubic-bezier(.4,0,.2,1) slideDown}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.status-good,.status-success{color:var(--success-color);background:var(--bg-success);border:1px solid #10b98133;border-radius:9999px;padding:.35rem .85rem;font-size:.875rem;font-weight:600}.status-warning{color:var(--warning-color);background:var(--bg-warning);border:1px solid #f59e0b33;border-radius:9999px;padding:.35rem .85rem;font-size:.875rem;font-weight:600}.status-danger{color:var(--danger-color);background:var(--bg-danger);border:1px solid #ef444433;border-radius:9999px;padding:.35rem .85rem;font-size:.875rem;font-weight:600}.status-info{color:var(--info-color);background:var(--bg-info);border:1px solid #3b82f633;border-radius:9999px;padding:.35rem .85rem;font-size:.875rem;font-weight:600}.tabs{border-bottom:2px solid var(--border-color);gap:1rem;margin-bottom:2rem;padding-bottom:5px;display:flex;overflow-x:auto}.tab{color:var(--text-light);white-space:nowrap;background:0 0;border:none;border-bottom:3px solid #0000;padding:1rem 1.5rem;font-size:1.05rem;font-weight:600;transition:all .3s}@media (width>=768px){.tab{padding:1rem 2rem}}.tab.active{color:var(--accent-color);border-color:var(--accent-color)}.tab:hover:not(.active):not(:disabled){color:var(--text-dark);border-color:var(--border-color)}.score-circle{border:6px solid var(--accent-color);background:#fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:140px;height:140px;margin:0 auto;transition:transform .4s cubic-bezier(.175,.885,.32,1.275);display:flex;box-shadow:inset 0 2px 4px #0000000d,0 4px 10px #0000000d}.score-circle:hover{transform:scale(1.05)}@media (width>=768px){.score-circle{border-width:8px;width:160px;height:160px}}.score-circle .number{font-family:var(--font-heading);font-size:3.5rem;font-weight:700;line-height:1}.score-circle .label{text-transform:uppercase;letter-spacing:.05em;margin-top:.5rem;font-size:.8rem}.loading-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:1000;background:#ffffffd9;flex-direction:column;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.spinner{border:4px solid var(--border-color);border-top-color:var(--accent-color);border-radius:50%;width:60px;height:60px;margin-bottom:1.5rem;animation:1s cubic-bezier(.5,.1,.4,.9) infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.table-responsive{width:100%;overflow-x:auto}table{border-collapse:collapse;text-align:left;width:100%}th,td{border-bottom:1px solid var(--border-color);padding:1rem}th{color:var(--text-light);font-weight:600}
