/* Clinical Eligibility App - Shared Styles */
*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;min-height:100vh;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#1a202c}
.container{max-width:1200px;margin:0 auto;padding:24px}
.card{background:rgba(255,255,255,.95);backdrop-filter:blur(10px);border-radius:18px;padding:24px;box-shadow:0 12px 30px rgba(0,0,0,.12);margin-bottom:20px}
h1,h2{color:#2d3748}
.btn{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:12px;padding:12px 18px;font-weight:600;cursor:pointer;transition:.2s}
.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 18px rgba(102,126,234,.35)}
.btn-success{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff}
.btn-danger{background:linear-gradient(135deg,#ff6b6b,#ee5a24);color:#fff}
.input,select{width:100%;padding:12px 14px;border:2px solid #e2e8f0;border-radius:10px;transition:.2s;background:#fff}
.input:focus,select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px rgba(102,126,234,.12)}
.grid{display:grid;gap:16px}
.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.table{width:100%;border-collapse:collapse}
.table th,.table td{border-bottom:1px solid #e2e8f0;padding:12px;text-align:left}
.table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}
.header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}
.badge{display:inline-block;padding:6px 10px;border-radius:999px;font-size:12px;background:rgba(102,126,234,.1);color:#445}
.status-approved{color:#38a169;font-weight:600}
.status-rejected{color:#e53e3e;font-weight:600}
nav a{color:#2d3748;text-decoration:none;font-weight:600;margin-right:14px}
nav a.active{color:#667eea;text-decoration:underline}
footer{margin-top:24px;color:#4a5568;font-size:12px;text-align:center}
.notice{padding:12px;border-left:4px solid #48bb78;background:rgba(72,187,120,.12);border-radius:8px}
.hidden{display:none}
@media(max-width:800px){.grid-2,.grid-3{grid-template-columns:1fr}}
/* Loader overlay */
.loader-overlay {
    position: fixed;
    inset: 0;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,.6);
    backdrop-filter: blur(2px);
    z-index: 9999
}

    .loader-overlay.show {
        display: flex
    }

.spinner {
    width: 64px;
    height: 64px;
    border: 6px solid #e2e8f0;
    border-top-color: #667eea;
    border-radius: 50%;
    animation: spin .9s linear infinite
}

@keyframes spin {
    to {
        transform: rotate(360deg)
    }
}