*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f0f2f5;color:#1a1a2e}.app-layout{display:flex;min-height:100vh}.sidebar{width:260px;background:#1a1a2e;color:#fff;padding:1.5rem 0;flex-shrink:0}.sidebar h1{font-size:1.1rem;padding:0 1.5rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:1rem}.sidebar nav a{display:block;padding:.75rem 1.5rem;color:#ffffffb3;text-decoration:none;font-size:.9rem;transition:all .15s}.sidebar nav a:hover,.sidebar nav a.active{background:#ffffff1a;color:#fff}.main-content{flex:1;padding:2rem;overflow-y:auto}.page-header{margin-bottom:1.5rem}.page-header h2{font-size:1.5rem;font-weight:600}.card{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #00000014;margin-bottom:1rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{background:#fff;border-radius:8px;padding:1.25rem;box-shadow:0 1px 3px #00000014}.stat-card .label{font-size:.8rem;color:#666;margin-bottom:.25rem}.stat-card .value{font-size:1.75rem;font-weight:700;color:#1a1a2e}.btn{display:inline-block;padding:.5rem 1rem;border:none;border-radius:6px;font-size:.875rem;cursor:pointer;font-weight:500}.btn-primary{background:#2563eb;color:#fff}.btn-primary:hover{background:#1d4ed8}.btn-danger{background:#dc2626;color:#fff}.btn-secondary{background:#e5e7eb;color:#374151}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.85rem;font-weight:500;margin-bottom:.35rem}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.5rem .75rem;border:1px solid #d1d5db;border-radius:6px;font-size:.875rem}.form-group textarea{min-height:100px;resize:vertical}table{width:100%;border-collapse:collapse}table th,table td{padding:.75rem;text-align:left;border-bottom:1px solid #e5e7eb;font-size:.875rem}table th{font-weight:600;color:#666;font-size:.8rem;text-transform:uppercase}.badge{display:inline-block;padding:.15rem .5rem;border-radius:4px;font-size:.75rem;font-weight:500}.badge-green{background:#dcfce7;color:#166534}.badge-red{background:#fee2e2;color:#991b1b}.badge-blue{background:#dbeafe;color:#1e40af}.badge-yellow{background:#fef9c3;color:#854d0e}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:#1a1a2e}.login-card{background:#fff;padding:2.5rem;border-radius:12px;width:100%;max-width:400px;box-shadow:0 20px 60px #0000004d}.login-card h1{text-align:center;margin-bottom:.5rem;font-size:1.25rem}.login-card p{text-align:center;color:#666;margin-bottom:2rem;font-size:.875rem}.error-msg{background:#fee2e2;color:#991b1b;padding:.75rem;border-radius:6px;margin-bottom:1rem;font-size:.85rem}.transcript-line{padding:.5rem 0;border-bottom:1px solid #f3f4f6;font-size:.875rem}.transcript-line .role{font-weight:600;color:#2563eb;margin-right:.5rem}.transcript-line.caller .role{color:#059669}.health-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.health-item{padding:1rem;border-radius:8px;border:1px solid #e5e7eb}.health-item.ok{border-color:#86efac;background:#f0fdf4}.health-item.fail{border-color:#fca5a5;background:#fef2f2}.user-bar{padding:.75rem 1.5rem;border-top:1px solid rgba(255,255,255,.1);margin-top:auto;font-size:.8rem;color:#ffffff80}.user-bar button{background:none;border:none;color:#ffffffb3;cursor:pointer;font-size:.8rem;margin-top:.5rem}.user-bar button:hover{color:#fff}
